如何判断某个成员是否在数组内呢?
目前搜集了两种方法
自制的check方法,部署在
Array.prototype
对象上
Array.prototype.check = function(ele){
var i, l = this.length, res = false;
for(i = 0; i < l; i++){
ele === this[i]?res = true:void 0;
}
return res;
}
聪明一些的方法(别人想出来的),将数组转换为string再用indexOf判断
arr.toString().indexOf(num)===-1?console.log('not in'):console.log('in');
有没有更好一点的方法呢?
数组本身就有
indexOf()
方法(ES5)和includes()
方法(ES7)。另外,你说的那个聪明的方法是有问题的。比如有个数组:
你用那个聪明的方法测一下数字
45
和8
在不在数组中试试。