Baseline Widely available
СводкаÐлобалÑное ÑвойÑÑво NaN
ÑвлÑеÑÑÑ Ð·Ð½Ð°Ñением, пÑедÑÑавлÑÑÑим не-ÑиÑло (Not-A-Number).
function sanitize(x) {
if (isNaN(x)) {
return NaN;
}
return x;
}
console.log(sanitize("1"));
// Expected output: "1"
console.log(sanitize("NotANumber"));
// Expected output: NaN
ÐпиÑание
NaN
ÑвлÑеÑÑÑ ÑвойÑÑвом глобалÑного обÑекÑа.
ÐаÑалÑнÑм знаÑением NaN
ÑвлÑеÑÑÑ Not-A-Number (не-ÑиÑло) â Ñо же Ñамое знаÑение, ÑÑо и Ñ Number.NaN
. Ð ÑовÑеменнÑÑ
бÑаÑзеÑаÑ
NaN
ÑвлÑеÑÑÑ Ð½ÐµÐ½Ð°ÑÑÑаиваемÑм и незапиÑÑваемÑм ÑвойÑÑвом. Ðаже когда ÑÑо не Ñак, избегайÑе его пеÑеопÑеделениÑ.
РпÑогÑаммаÑ
NaN
иÑполÑзÑеÑÑÑ Ð´Ð¾Ð²Ð¾Ð»Ñно Ñедко. ÐÑо возвÑаÑаемое знаÑение в ÑиÑÑаÑиÑÑ
, когда маÑемаÑиÑеÑкие (Math
) ÑÑнкÑии не ÑÑабаÑÑваÑÑ Ð´Ð¾Ð»Ð¶Ð½Ñм обÑазом (напÑимеÑ, пÑи вÑзове Math.sqrt(-1)
) или когда ÑÑнкÑиÑ, пÑÑаÑÑаÑÑÑ ÑÑиÑаÑÑ ÑиÑло из ÑÑÑоки, ÑеÑÐ¿Ð¸Ñ Ð½ÐµÑдаÑÑ Ð¿Ð¾ пÑиÑине Ñого, ÑÑо в ÑÑÑоке не ÑиÑло (parseInt('blabla')
).
NaN
NaN
ÑвлÑеÑÑÑ Ð½ÐµÑавнÑм (поÑÑедÑÑвом ÑÑÐ°Ð²Ð½ÐµÐ½Ð¸Ñ ÑеÑез ==
, !=
, ===
, and !==
) лÑÐ±Ð¾Ð¼Ñ Ð´ÑÑÐ³Ð¾Ð¼Ñ Ð·Ð½Ð°ÑениÑ, вклÑÑÐ°Ñ Ð´ÑÑгое знаÑение NaN. ÐÑполÑзÑйÑе Number.isNaN()
или isNaN()
, ÑÑÐ¾Ð±Ñ Ð½Ð°Ð¸Ð±Ð¾Ð»ÐµÐµ понÑÑнÑм обÑазом опÑеделиÑÑ ÑвлÑеÑÑÑ Ð»Ð¸ знаÑение знаÑением NaN. Ðли вÑполниÑе Ñамо-ÑÑавнение: NaN, и ÑолÑко NaN, в ÑезÑлÑÑаÑе Ñакого ÑÑÐ°Ð²Ð½ÐµÐ½Ð¸Ñ Ð±ÑÐ´ÐµÑ Ð½ÐµÑавнÑм ÑÐ°Ð¼Ð¾Ð¼Ñ Ñебе.
NaN === NaN; // false
Number.NaN === NaN; // false
isNaN(NaN); // true
isNaN(Number.NaN); // true
function valueIsNaN(v) {
return v !== v;
}
valueIsNaN(1); // false
valueIsNaN(NaN); // true
valueIsNaN(Number.NaN); // true
Тем не менее, обÑаÑиÑе внимание на ÑазниÑÑ Ð¼ÐµÐ¶Ð´Ñ ÑÑнкÑией isNaN()
и меÑодом Number.isNaN()
: пеÑÐ²Ð°Ñ Ð²ÐµÑнÑÑ true
, еÑли знаÑение в наÑÑоÑÑий Ð¼Ð¾Ð¼ÐµÐ½Ñ ÑвлÑеÑÑÑ NaN
, или еÑли оно ÑÑÐ°Ð½ÐµÑ NaN
поÑле Ñого, как пÑеобÑазÑеÑÑÑ Ð² ÑиÑло, в Ñо вÑÐµÐ¼Ñ ÐºÐ°Ðº поÑледний веÑнÑÑ true
, ÑолÑко еÑли ÑекÑÑим знаÑением ÑвлÑеÑÑÑ NaN
:
isNaN("hello world"); // true
Number.isNaN("hello world"); // false
СпеÑиÑикаÑии СовмеÑÑимоÑÑÑ Ñ Ð±ÑаÑзеÑами СмоÑÑиÑе Ñакже
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4