(JS) Truthy and Falsy & if
12198 ワード
例
function print(person) {
console.log(person.name);
}
const person = {
name: 'hodoo'
};
print(person);
//output TypeError: Cannot read property 'name' of undefined
print関数がobjectを与えていない場合、出力コンソールに問題がある場合は、次の機能を実現できます.function print(person) {
if (person === undefined) {
console.log('person이 없네요');
return;
}
console.log(person.name);
}
const person = null;
print(person);
null値がprintにパラメータとして渡されると、次のエラーが発生します.TypeError: Cannot read property 'name' of null
すべてのエラーを回避するために最終的にコードを記述すると、function print(person) {
if (person === undefined || person === null) {
console.log('person이 없네요');
return;
}
console.log(person.name);
}
const person = null;
print(person);
personが定義されていない場合やnullの場合に対応するために、次のコードを作成します.このように記述されたコードは、以下のように略記することができる.
function print(person) {
if (!person) {
console.log('person이 없네요');
return;
}
console.log(person.name);
}
const person = null;
print(person);
undefinedとnullはfalse値なのでfalsey値に感嘆符を付けるとtrueに変換されます.!person
は、人間という変数がなければと理解できる.Falsy値
console.log(!undefined);
console.log(!null);
console.log(!0);
console.log(!'');
console.log(!NaN);
以上の値はtrueです.console.log(!3);
console.log(!'hello');
console.log(!['array?']);
console.log(![]);
console.log(!{ value: 1 });
以前とは逆に、すべての値はfalseです.実際の値と虚偽の値もif文で使用できます.
const value = { a: 1 };
if (value) {
console.log('value가 Truthy하네요.');
}
valueは真の値であるため、メッセージはコンソールに出力されます.逆に、値が**null、undefined、0、""またはNaNのいずれかの場合、この値は表示されません.
これらの真の値と虚偽の値を理解すると、条件文を書くときによく利用できます.
一部の値が真の値である場合はtrue、そうでない場合はfalseです.
3つの演算子を使用してみてください.
const value = { a: 1 };
const truthy = value ? true : false;
これはもっと簡単に表現できます.const value = { a: 1 };
const truthy = !!value;
形容できる!valueはfalseになって、ここにいます!falseはtrueで、結果はtrueです.Reference
この問題について((JS) Truthy and Falsy & if), 我々は、より多くの情報をここで見つけました https://velog.io/@yunsungyang-omc/JS-Truthy-and-Falsy-ifテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol