gpt4 book ai didi

javascript - 检查 undefined variable 与错误变量

转载 作者:行者123 更新时间:2023-11-29 18:00:19 25 4
gpt4 key购买 nike

我正在使用 ESLint 检查我的 javascript 代码,我发现了“意外使用未定义”的警告

声明是

if (data.items === undefined) {...}

Data.items 通常等于一个 JSON 对象,但在某些情况下它可能只是未定义,如果是这种情况我想采取单独的操作。

要摆脱这个警告,使用是否合适

if (data.items === false) {...}

在这种情况下,这两个陈述是否等价?

最佳答案

不,它们不等价。要使它们等价,undefined === false 必须为 true。但是,=== 执行严格 相等比较,这意味着不同数据类型的值永远不会相等。 falseBoolean 数据类型的值,undefinedUndefined 数据类型的值。因此 undefined === truefalse


如果你想显式地测试值undefined而不引用undefined,你可以使用typeof:

if (typeof data.items === 'undefined')

如果要测试属性 items存在,可以使用 in 运算符或 .hasOwnPropery:

if (!data.hasOwnProperty('items'))
if (!('items' in data))

如果知道 data.items 的可能值是 undefined 或一个对象,您可以简单地让 JavaScript 的类型转换为您工作并使用

if (!data.items)

如果 data.items 是一个对象(包括数组)!data.items 将为 false。如果它是 undefined,它将是 true

关于javascript - 检查 undefined variable 与错误变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35487226/

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