js如何从列表中寻找一个元素是不是存在?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js如何从列表中寻找一个元素是不是存在?相关的知识,希望对你有一定的参考价值。

在谷歌控制台写了一个js如下:
var chessman = [[8, 8], [7, 8]];
然后输入如下:
chessman.includes([8, 8]);
它却返回false,就算输入:
chessman.indexOf([8, 8]);
它也返回-1,求助!!!

参考技术A includes和indexOf方法只能查找number和string。
至于数组,最保险的方法还是用for遍历¯\_(ツ)_/¯本回答被提问者采纳
参考技术B 因为待查找的元素是引用类型的数据,js里引用类型只能进行浅比较,也就是只比较地址,当然查不到了

js在数组中查找是不是存在某一个数值

参考技术A const array = ['apple', 'banance', 'orange']

array.indexOf('apple') // 0 存在

array.indexOf('strawBerry') // -1不存在

const array = ['apple', 'banance', 'orange']
array.find(obj => obj == 'banance') //banance 存在
array.find(obj => obj == 'strawBally') //undefined 不存在

const arrayList = [
  name: '张三', name: '李四'
]
arrayList.find(obj => obj.name == '李四') //name: '李四' 存在
arrayList.find(obj => obj.name == '王五') //undefined 不存在

const array = ['apple', 'banance', 'orange']
array.findIndex(obj => obj == 'banance') //大于0存在
array.findIndex(obj => obj == 'strawBally') //-1 不存在

const array = ['apple', 'banance', 'orange']
array.includes('banance') //true存在
array.includes('strawBally') //false存在

const array = ['apple', 'banance', 'orange']
array.filter(obj => obj == 'orange') //['orange'] 存在
array.filter(obj => obj == 'strawBally') //[] 不存在

const array = [ name: 'banance' , name: 'apple' ]
console.log(array.filter(obj => obj.name === 'apple')) //[name: 'apple'] 存在
console.log(array.filter(obj => obj.name === 'strawBally')) //[] 不存在

以上是关于js如何从列表中寻找一个元素是不是存在?的主要内容,如果未能解决你的问题,请参考以下文章

在 Presto 中,如何检查我通过子查询获取的列表中是不是存在数组中的元素

如何测试列表元素是不是存在?

js如何判断光标是不是在某元素上

js如何查找数组中是不是存在某个值

检查一个列表元素中的元素是不是存在于另一个列表中

如何检查数组的元素是不是存在于字符串中