1
私はオブジェクトフィールドの値をチェックする必要があり、それに応じてReactiveVar
変数を設定したいとします。 しかし、このフィールドは単なるオプションなので、まったく存在しないかもしれません。値をチェックする正しい方法は何ですか?未定義の変数値をチェックする方法は?
私がちょうどvar result = (data.profile.anyField == 'something')
を使用するのであれば、anyField
のundefined
を使用できないため、プロファイルが設定されていないとエラーが発生します。
は、だから私はこのようにそれを行うだろうが、私はそれが少し賢くして行うことができると思う短い:
var modus;
if (Data.profile) modus = (Data.profile.anyField == 'something') ? 'setValue' : '';
else modus = '';
this.modus = new ReactiveVar(modus);
をそしてmodus
の値を設定することが正しい場合は、2番目の質問です空の文字列ですか?
this.modus = new ReactiveVar('setValue'); // if modus is true
this.modus = new ReactiveVar(); // if modus is false
何で空の文字列を置き換え'ReativeVar'は何をしますか?空の文字列を渡すことができるかどうかに依存します。あなたは 'var modus = data && data.profile && data.profile.anyField == '何か'を行うことができますか? 'setValue': ''; ' – putvande