javascript中in和includes的区别

in的用法

遍历对象
let names = {
    
    
   name: 'Alice',
    age:20,
    address:"beijing"
    };
    //name是属性
for(let name in names){
    
    
    console.log("属性是:"+name+"值是:"+names[name])
}
//判断某个属性是否在对象中,属性名字一定要加引号
console.log("name" in names)
console.log("Name" in names)
console.log("age" in names)

在这里插入图片描述

遍历数组
let arr = [7,5]
    for (let i in arr)
    {
    
    
        console.log("索引:"+i+"值"+arr[i])
    }
    console.log(7 in arr)
    console.log("7" in arr)
    console.log(1 in arr)

在这里插入图片描述
总结一下:在对象中name是对应对象中的属性,在数组中属性值就是索引。判断一个属性是否在对象中要用引号引住属性,不然就会出现undefine的错误;在数组中用不用引号都默认是索引,不是数值!!!!!切记

includes用法

includes() 方法用来判断一个数组是否包含一个指定的值,如果是返回 true,否则false,第一个参数是要判断的值,第二个是要从数组的那个索引开始判断,默认是0

[1, 2, 3].includes(2);     // true
[1, 2, 3].includes(4);     // false
[1, 2, 3].includes(3, 3);  //false
[1, 2, 3].includes(3, -1); // true
[1, 2, NaN].includes(NaN); // true
console.log([1,2,3].includes(1,1))//false

如有错误欢迎大佬批评指正。

猜你喜欢

转载自blog.csdn.net/qq_44606064/article/details/109545569
今日推荐