nullish optional chaining
const adventurer = {
name: 'Alice',
cat: {
name: 'Dinah'
}
};
const dogName = adventurer.dog?.name;
console.log(dogName);
// expected output: undefined
console.log(adventurer.someNonExistentMethod?.());
// expected output: undefined
便利じゃんこれ
rubyの&ね。ぱくりか。いやrubyもパクリか?
typescriptはコンパイル時にnullチェックできる
optional chainingはnull, undefinedならundefinedを返す。これってつないだら、どこまでもいけるって、それはそれで大丈夫?
const adventurer = {
name: 'Alice',
cat: {
name: 'Dinah'
}
};
const dogName = adventurer.dog?.name?.hoge?.koge;
console.log(dogName);
console.log(adventurer.someNonExistentMethod?.());
// > undefined
// > undefined
なんかな、、、
いいことあるのかな
しかし、Optional chaining を使うことで上記のコードを簡潔に書くことができます。
let id = null;
if (user) {
id = user.id;
}
``````````````````````````
const id = user?.id;
なるほどたしかに
最終更新
役に立ちましたか?