プロパティが存在しない場合の挙動
var object = {
value:'hoge'
};
console.log(object.key);
// 存在しないプロパティだとundefinedになる
undefined
JavaScriptでは存在しないプロパティにアクセスすると、エラーでは無くundefinedになります。
JavaScriptにおけるundefinedの値評価について
[JavaScript] null とか undefined とか 0 とか 空文字('') とか false とかの判定について - Qiita
http://qiita.com/phi/items/723aa59851b0716a87e3
上記の記事が参考になります。
こちらに記載がある通り、undefinedはJavaScriptではfalseになります。
オブジェクトのプロパティにデフォルト値を使う
var object = {
value:'hoge'
};
var defaultObject = {
value: 'key' in object ? object.key : 'defaultValue'
}
console.log(defaultObject.value);
// object.keyが存在しないので、デフォルト値のdefaultValueになる
defaultValue
以前はいちいち、typeof object.key !== 'undefined'みたいに書いていたので、かなりコードの省略が出来るようになりました。
以上です
これ間違ってるよ!とか、もっといい書き方があればぜひ教えて下さい!