JavaScript(8202)—Null vs.Unidefined
2735 ワード
JavaScript(8202)—Null vs.Unidefined
初心者はよく である. である.
以下はDemoです.a変数にnullを割り当てます.
JS言語には6つの
falsy値: false (ゼロ) "(empty string) null undefined NaN(Not A Number) 残りの全ての値は
また、JS言語には6つの元のデータタイプがあり、 Boolean Null Udefined Number String Symbol 上記の六種類のうちでないものは全部引用タイプです.しかし、面白いことに、
上記の説明を通して、
?
無駄話が多すぎて、本当に使えるところは、 を表すために与えられた値です. . である. をもたらす.
初心者はよく
null
とundefined
の違いが分かりません.本論文はnull
とundefined
の違いを深く分析します.null
は何ですかnull
について2つの把握が必要です.null
は、
値null
は、割り当てられた以下はDemoです.a変数にnullを割り当てます.
let a = null;
console.log(a);
// null
undefined
は何ですかundefined
は、通常、一つの変数が単に宣言されたことを表しているが、初期化されていない.デモ:let b;
console.log(b);
// undefined
また、特別に変数にundefined
を割り当てることもできますが、通常のシーンではこのようには使えません.let c = undefined;
console.log(c);
// undefined
もう一つは、訪問先に存在しない属性がある場合、undefined
を得ることです.var d = {};
console.log(d.fake);
// undefined
null
&undefined
の同じ点JS言語には6つの
falsy
の値があり、null
とundefined
は6つのfalsy
の値のうちの2つである.falsy値:
truthy
である.また、JS言語には6つの元のデータタイプがあり、
null
およびundefined
はその中の2つの元のタイプの値である.元のデータタイプ:typeof
を使用してnull
を検証すると、戻ってきたのはobject
であり、これは最初に導入されたjsのbugであると簡単に理解できる.let a = null;
let b;
console.log(typeof a);
// object
console.log(typeof b);
// undefined
null!==undefined上記の説明を通して、
null
とundefined
は違っているとぼんやりと感じたかもしれませんが、とても似ています.したがって、null !== undefined
、null == undefined
.?
null
とundefined
とは異なる実際のアプリケーションシーンがありますか?無駄話が多すぎて、本当に使えるところは、
が一つになるほど、s 6のデフォルトパラメータがあります.let logHi = (str = 'hi') => {
console.log(str);
}
/* */
logHi();
// hi
/* */
logHi('bye');
// bye
/* */
logHi(undefined);
// hi
/*null */
logHi(null);
// null
上記のコードについて、皆さんは私と一緒にs 5のデフォルトパラメータの書き方を思い出します.let logHi = (str) => {
str = str || 'hi';
console.log(str);
}
logHi('bye');
// bye
logHi()
// hi
logHi(undefined);
// hi
logHi(null);
// hi
Summarynull
は、空undefined
は、通常、変数が宣言されていることを表しているが、初期化されていないnull
およびundefined
は、いずれもfalsy
値null
およびundefined
は元のデータタイプであるが、JS言語のバグはtypeof null = object
null !== undefined
null == undefined