ʻO ka ʻokoʻa ma waena o null a undefined ma JavaScript
Kākauʻōlelo
JavaScriptHoʻohana maʻamau o null
Ma ke ʻano he parameter hana, ʻo ia hoʻi ʻaʻole ka mea hana i kahi mea
function myFn(obj) {
if(null == obj) {
// code
}
}
E like me ka hopena o ka mea prototype chain
Object.getPrototypeOf(Object.prototype);
Ke hoʻokuʻu nei i ka loli, hāʻawi ʻole i ka loli
let o={
code:'abc'
};
o = null;
Hoʻohana maʻamau o undefined
Hōʻike ʻia ka loli akā ʻaʻole i hāʻawi ʻia, ʻaʻole i wehewehe ʻia ka waiwai o ka loli
let o;
console.log(o); //undefined
ʻAʻole i hāʻawi ʻia ka pāʻālua e pono ai ka hana ke kāhea ʻana, a laila ʻaʻole i wehewehe ʻia ka waiwai o nā mea i hāʻawi ʻia
function myFn(o) {
console.log(o);
}
myFn(); //undefined
Nā waiwai i loaʻa ʻole i ka mea, ʻaʻole i wehewehe ʻia ke kumukūʻai
let o={
code:'abc'
};
console.log(o.name); //undefined
Ke hoʻihoʻi ʻole ka hana i kahi waiwai, hoʻi mai ia i koho ʻole ʻia e ka paʻamau
function myFn(obj) {
obj = 'a';
}
console.log(myFn()); //undefined
Nā mea like ma waena o null a undefined
Hewa ke hoʻololi ʻia i boolean
console.log(Boolean(null)); // false
console.log(Boolean(undefined)); // false
ʻO ka ʻokoʻa ma waena o null a undefined
ʻOkoʻa ka hopena ke hoʻololi ʻia i helu. ʻO ka hopena o ka hoʻohuli ʻole he helu helu kūpono o 0, a ʻo ka hopena o ka hoʻohuli ʻole hoʻohuli ʻia ʻo NaN.
console.log(Number(null)); // 0
console.log(Number(undefined)); // NaN
He ʻokoʻa nā ʻano ʻelua, ʻo ke ʻano o ka null he mea, a ʻo ke ʻano o ka undefined ʻaʻole i wehewehe ʻia.
console.log(typeof null); //object
console.log(typeof undefined); //undefined
e hoʻohālikelike i ka nul a me ka ʻole
No ka hoʻokaʻawale ʻana ma waena o ka null a me ka undefined, hiki ke hoʻohana ʻia ka hoʻopili ʻana wale nō. I ka hoʻopili ʻana, e hoʻohālikelike pono ia inā kūlike nā ʻano ʻelua.
console.log(Boolean(null == undefined)); // true
console.log(Boolean(null === undefined)); // false
e hōʻuluʻulu manaʻo
Ma hope o ka hoʻohālikelike ma luna, ʻike maopopo mākou i kēia ʻano ʻelua. ʻO ka maʻamau ke hoʻokolokolo mākou inā he waiwai kūpono ka mea hoʻololi ke kākau ʻana i ka pāʻālua, ʻaʻole pono mākou e hoʻokaʻawale ma waena o nā mea ʻelua, e hoʻohana wale ia ma ke ʻano he ʻano Boolean. Akā inā pono mākou e hoʻokolokolo inā loaʻa ka waiwai, pono mākou e hoʻohana pololei i ke ʻano e hoʻokolokolo kūpono ʻole. ʻO ka mea hope loa, inā mākou e hala i kahi helu helu, pono mākou e hoʻoholo mua, a ʻaʻole hiki ke hoʻolei pololei ʻia i kahi helu helu, i ʻole e hana ʻole ʻia ka hopena iā mākou i nā hopena kūpono ʻole, a helu pono ʻole ʻia ka hopena maikaʻi ʻole NaN.