Javascript [Array]中的构造函数返回false的原因

Javascript [Array]中的构造函数返回false的原因,javascript,Javascript,为什么在构造中使用: [].constructor in [Array] 返回false,但 [].constructor == Array 返回true中的运算符检查键是否存在,而不是值: 如果指定的属性位于指定的对象或其原型链中,则返回true 将返回false,同时: 0 in ['key'] 将返回true 要检查该值是否存在,可以使用以下方法: 将返回true中的操作员检查键是否存在,而不是值: 如果指定的属性位于指定的对象或其原型链中,则返回true 将返回false,同时:

为什么在构造中使用

[].constructor in [Array]
返回
false
,但

[].constructor == Array

返回
true

中的
运算符检查键是否存在,而不是值:

如果指定的属性位于指定的对象或其原型链中,则返回true

将返回
false
,同时:

0 in ['key']
将返回
true


要检查该值是否存在,可以使用以下方法:


将返回
true

中的
操作员检查键是否存在,而不是值:

如果指定的属性位于指定的对象或其原型链中,则返回true

将返回
false
,同时:

0 in ['key']
将返回
true


要检查该值是否存在,可以使用以下方法:


将返回
true

如果指定的属性位于指定的对象或其原型链中,则中的操作符将返回true。不是值,它检查属性(例如在数组中)是否具有从0开始的索引(数字)属性 所以如果我们回到你的例子

如果我们检查数组是否有一个属性0,它将返回true;如果我们检查数组是否有一个属性1,它将返回false,因为数组只有一个具有索引的元素 0

让arr=[Array]
console.log(arr中为0);//真的

console.log(arr中的1个);//如果指定的属性位于指定的对象或其原型链中,则
中的运算符返回true。不是值,它检查属性(例如在数组中)是否具有从0开始的索引(数字)属性 所以如果我们回到你的例子

如果我们检查数组是否有一个属性0,它将返回true;如果我们检查数组是否有一个属性1,它将返回false,因为数组只有一个具有索引的元素 0

让arr=[Array]
console.log(arr中为0);//真的

console.log(arr中的1个);//false
您是否找到了正在寻找或等待其他答案的解决方案?您是否找到了正在寻找或等待其他答案的解决方案?
[Array].includes([].constructor)