gpt4 book ai didi

javascript - 使用 null 检查传递的参数 - JavaScript

转载 作者:数据小太阳 更新时间:2023-10-29 06:12:44 24 4
gpt4 key购买 nike

这里举个例子函数:

function a(b){
console.log(b != null ? 1 : 2);
}

该代码工作正常,如果传递参数则打印 1,否则打印 2。

但是,JSLint 给了我一个警告,告诉我改为使用严格的等式,即 !==。无论是否传递参数,函数在使用!==时都会打印1。

所以我的问题是,检查参数是否已传递的最佳方法是什么?我不想使用 arguments.length,或者根本不想使用 arguments 对象。

我试过用这个:

function a(b){
console.log(typeof(b) !== "undefined" ? 1 : 2);
}

^ 这似乎可行,但这是最好的方法吗?

最佳答案

当没有传递任何参数时,bundefined,而不是null。因此,测试参数 b 是否存在的正确方法是:

function a(b){
console.log(b !== undefined ? 1 : 2);
}
推荐使用

!==,因为如果您使用 ==!=,可以强制 null 和 undefined 相等,但是使用!===== 不会进行类型强制转换,因此您可以严格判断它是否为 undefined

关于javascript - 使用 null 检查传递的参数 - JavaScript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11925836/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com