欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

javascript 運算結(jié)果 nan

蔡開配1年前6瀏覽0評論

在javascript中,當(dāng)數(shù)字類型的變量和其他類型運算,或運算的值不是數(shù)字時,會得到一個名為NaN(Not a Number)的結(jié)果。NaN的特殊之處在于,它不等于任何一個其他的值,即使和自己比較也會返回false。

例如,我們可以嘗試用NaN去操作一個數(shù)字類型變量:

var num1 = 10;
var result = num1 / "hello";
console.log(result);   // 返回 NaN

這里我們將字符串“hello”和數(shù)字10進行除法運算,得到的結(jié)果是NaN。這是因為字符串和數(shù)字之間不能進行除法運算。同樣地,如果我們將一個數(shù)字和undefined、null等其他類型的變量進行運算,結(jié)果也會是NaN。

有時候我們也會在一個表達式中出現(xiàn)NaN,這時整個表達式的結(jié)果也會被認為是NaN:

var result = 10 / 0 + "hello" * 5 - "world";
console.log(result);      // 返回 NaN

這里我們將數(shù)字10除以0得到無窮大,然后用無窮大加上字符串“hello”乘以5得到NaN,接著用NaN減去字符串“world”,結(jié)果仍然是NaN。

在一些情況下,我們可能想要判斷一個值是否是NaN。由于NaN和任何值都不相等,所以我們可以使用一個內(nèi)置函數(shù)isNaN()來進行判斷:

var num1 = 10;
var num2 = "hello";
var result1 = isNaN(num1);
var result2 = isNaN(num2);
console.log(result1);    // 返回 false
console.log(result2);    // 返回 true

這里我們對數(shù)字類型的變量num1和字符串類型的變量num2分別使用isNaN(),結(jié)果num1返回false,num2返回true。因為num1是數(shù)字類型,而num2是字符串類型,無法被轉(zhuǎn)換成數(shù)字,所以它是NaN。

了解NaN的運算規(guī)則對于我們編寫javascript代碼非常重要。我們需要先判斷數(shù)字類型變量的有效性,避免出現(xiàn)NaN的錯誤結(jié)果。當(dāng)然,在一些特殊的場景下,NaN也可以用來表示無效值,比如在存儲數(shù)據(jù)時,我們可以用NaN來標(biāo)記缺失的數(shù)值。