如何将nAn转换为0

时间:2013-10-23 07:17:10

标签: javascript

使用json的数组 如何将NaN转换为数字零 所以如果你有数组1,2,3并减去1,2如何减去 1-1 2-2 3- NaN 对于3-0,NaN应为0

// Create variables to append player's + or - score per hole
        var golfStroke = scores[y].strokes[q];
        var parStroke = pars[z];
        var scoreStroke = parStroke - golfStroke;
        // Create if statement to change undefined array values to number 0 for calculation
        var isNum = function () {
            if (isNaN(golfStroke)) {
            return 0;
        } else {
            return golfStroke;
        }
        if (isNaN(parStroke)) {
            return 0;
        } else {
            return parStroke;
        };
        }
        console.log("The over or minus par is: " + scoreStroke);

由于

3 个答案:

答案 0 :(得分:4)

如果您有0,使用NaN的简单方法就是使用JavaScript's curiously-powerful || operator

var x = somethingThatMayBeNaN || 0;

由于NaN是假的,如果somethingThatMayBeNaNNaN(或0或任何其他假名值),则x将设为{{1} }}。如果0是真实的,somethingThatMayBeNaN将设置为x。当您处理数值计算时,通常只有somethingThatMayBeNaN0可能存在的假名值。


“Falsey”和“truthy”:“falsey”值为NaN0""NaNundefined,当然还有,null。一切都是“真实的”。

答案 1 :(得分:3)

这将检查值是否为NaN,然后​​为其指定0。

anyNan = isNaN(anyNan) ? 0 : anyNan;

答案 2 :(得分:0)

假设golfStroke可以是NaN,例如:

var scoreStroke = parStroke - ~~golfStroke;

通过这种方式,任何数字都将保持不变,任何“虚假”值(如NaN)将变为0