只是為了興趣。我們有 NaN 正在沿著邊計算傳播。
1 NaN => NaN
是否有任何運營商可以阻止這種傳播。我的意思是:
<operator> NaN => number
或者
NaN <operator> <operand> => number
或者
<operand> <operator> NaN => number
NaN => 數字
uj5u.com熱心網友回復:
實際上在 (**) 數字運算子的 Ecmascript 定義中。當第二個運算元為 0 或 -0 時有特殊情況。
https://tc39.es/ecma262/multipage/ecmascript-data-types-and-values.html#sec-numeric-types-number-exponentiate
所以實際上:
console.log(NaN ** 0) // will log 1
uj5u.com熱心網友回復:
Javascript 有一個檢測 NaN 的內置方法,但是您需要為每個運算元檢查這個“可能的數字”。
let possibleNumber = "4f";
console.log(isNaN(Number(possibleNumber)));
possibleNumber = "44";
console.log(isNaN(Number(possibleNumber)));
輸出:
true
false
您可以執行一些功能來檢查并回傳您想要的一些數字
function checkIfIsNaN(number,numIfTrue,numIfFalse){
if(isNaN(Number(number))){ return numIfTrue} else{return numIfFalse};
}
console.log(checkIfIsNaN("44",4,10));
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/419284.html
標籤:
上一篇:函式計算的角度不一致
