JS遍历下标的时候不能使用===
JavaScript中 == 与 === 没有规律可循, 现在for in遍历一个数组, 下表就不能使用===来进行比较:
let array = [1,2,3]
for(let i in array){
console.log(typeof i)
}
返回结果:
string // 注意这里index不是Number
string
string
使用 == 的效果:
let array = [1,2,3]
for (let i in a){console.log(i==0,i)}
返回结果:
true 0
false 1
false 2
使用 === 的效果:
let array = [1,2,3]
for (let i in a){console.log(i===0,i)}
返回结果:
false 0
false 1
false 2
前面说 == 与 === 没有规律可循, 不太具体地讲,可以认为 === 是强等于, 类型必须正确; == 是若等于, 要求值相等;下面是== 与=== 的区别:
红色:===
橙色:==
黄色:<= 和 >= 同时成立,== 不成立
蓝色:只有 >=
绿色:只有 <=