var a = [1,2,3] if (1 in a) { console.log(‘something’) } 这样写不对,可以不写循环么,es6的语法也行。 python过来的新手,见谅,感谢!
https://cnodejs.org/topic/56a050ac8392272262331d62 论坛里看到了这个帖子,很赞
在ECMAScript 2016 (ES7)甚至可能将其应用于数组,像indexOf一样: !!~[1, 2, 3].indexOf(1); // true [1, 2, 3].includes(1); // true
是不是说明只能写循环了
Array对象有一个indexOf方法,如果存在返回元素的位置,如果不存在返回-1;可以利用一下…
感谢2楼!
哦 lz在这个需求里千万不能用in操作符 in 是说存不存在这个key而不是value!
var a = [66,99,77]; 66 in a //false 0 in a //true
var vv = {aa:11,bb:22}; "aa" in vv; //true "cc" in vv //false
做实验的时候很容易 试成这样
var a = [1,2,3]; //undefined 1 in a; //true
不要被迷惑嘞
@gjc9620 了解,感谢。
@mokaikai 回的好快=。= 没事
mark!是不是应该: 用of操作符呢? var a = [1,2,3] if (1 of a) { console.log(‘something’) }
@hanzhong-yan of不还是迭代么。。还是indexOf最简单呢
@gjc9620 恩,现在看来还是indexOf,其实就是我要的of的意思
var a = [1,2,3] if ( a.indexOf(1) !=-1) { console.log(‘something’) }
@hanzhong-yan for of 是遍历对象的key吧。
@yhc-yhc for of 是遍历实现了Iterable接口的数据结构对象,array is iterable , generator function is iterable too .
array 有几个方法可以选用: .indexOf() 或 .lastIndexOf() 可以判断一个 Value 是否在数组中, 并返回其下标. 大家已经都说了. 参考
.indexOf()
.lastIndexOf()
另外还有几个, 应该都算是函数式的风格: .every(function) 返回是否每个元素都符合 function 的要求 .some(function) 返回是否至少存在一个元素满足 function 的要求 .find(function) 返回第一个符合 function 要求的数组元素值, 注意返回的是 Value 不是 index. 参考
.every(function)
.some(function)
.find(function)
@Chunlin-Li 学习了,感谢!
注意低版本的ie里,Array是不支持indexOf这个方法的。要兼容所有浏览器并且自己写的话,还是要用for
Array
indexOf
for
CNode 社区为国内最专业的 Node.js 开源技术社区,致力于 Node.js 的技术研究。
https://cnodejs.org/topic/56a050ac8392272262331d62 论坛里看到了这个帖子,很赞
是不是说明只能写循环了
Array对象有一个indexOf方法,如果存在返回元素的位置,如果不存在返回-1;可以利用一下…
感谢2楼!
哦 lz在这个需求里千万不能用in操作符 in 是说存不存在这个key而不是value!
做实验的时候很容易 试成这样
不要被迷惑嘞
@gjc9620 了解,感谢。
@mokaikai 回的好快=。= 没事
mark!是不是应该: 用of操作符呢? var a = [1,2,3] if (1 of a) { console.log(‘something’) }
@hanzhong-yan of不还是迭代么。。还是indexOf最简单呢
@gjc9620 恩,现在看来还是indexOf,其实就是我要的of的意思
var a = [1,2,3] if ( a.indexOf(1) !=-1) { console.log(‘something’) }
@hanzhong-yan for of 是遍历对象的key吧。
@yhc-yhc for of 是遍历实现了Iterable接口的数据结构对象,array is iterable , generator function is iterable too .
array 有几个方法可以选用:
.indexOf()或.lastIndexOf()可以判断一个 Value 是否在数组中, 并返回其下标. 大家已经都说了. 参考另外还有几个, 应该都算是函数式的风格:
.every(function)返回是否每个元素都符合 function 的要求.some(function)返回是否至少存在一个元素满足 function 的要求.find(function)返回第一个符合 function 要求的数组元素值, 注意返回的是 Value 不是 index. 参考@Chunlin-Li 学习了,感谢!
注意低版本的ie里,
Array是不支持indexOf这个方法的。要兼容所有浏览器并且自己写的话,还是要用for