1
可能重複:
javascript in operator爲什麼([「a」,「b」]中的「a」)產生錯誤,並且([1,2]中的1)產生錯誤?
爲什麼("a" in ["a","b"])
產量false
,並且(1 in [1,2])
產量true
? 爲什麼"a"
與該數組的第一個元素不匹配,是否有原因? 爲什麼它不適用於字符串?
可能重複:
javascript in operator爲什麼([「a」,「b」]中的「a」)產生錯誤,並且([1,2]中的1)產生錯誤?
爲什麼("a" in ["a","b"])
產量false
,並且(1 in [1,2])
產量true
? 爲什麼"a"
與該數組的第一個元素不匹配,是否有原因? 爲什麼它不適用於字符串?
in
operator通過鍵而不是按值檢查屬性的存在。並且您的數組長度爲2 的索引爲"1"
- arr["1"]
爲值2
。例如,0 in ["a", "b"]
也是true
。行爲不依賴於正在使用的字符串或數字。
您通常會在普通對象上使用它,而不是在數組上。像"a" in {a:1} === true
或"b" in {a:1} === false
。
嘗試'(10 [10,20])';) – Lucero 2012-08-04 11:33:32