为什么[“a”,“b”]中的(“a”)产生假,而[1,2]中的(1)产生真

Why does ("a" in ["a","b"]) yield false, and (1 in [1,2]) yield true?

本文关键字:中的 为什么      更新时间:2023-09-26

可能重复:
操作员中的javascript

为什么("a" in ["a","b"])产生false,而(1 in [1,2])产生true"a"与该数组的第一个元素不匹配,而1与之匹配,这是有原因的吗?为什么它不适用于字符串?

in运算符通过键而不是值来检查属性的存在。长度为2的数组有一个索引"1"-arr["1"]是值2。例如,0 in ["a", "b"]也是true。行为并不取决于所使用的字符串或数字。

您通常会在普通对象上使用它,而不是在数组上。如"a" in {a:1} === true"b" in {a:1} === false