js 对象数组使用indexOf()判断某项是否在数组中返回-1 解决办法

    选择打赏方式

本站已不再更新,最新资源请前往zcjun.com获取!

var arr=[{name:"Alex"},{name:"Tom"}];
var tmp = arr.indexOf({name:"Alex"});
console.log(tmp)

上述代码打印出来是-1,对象数组需用forEach或者for去循环判断某项是否在数组中

如下:

arr.forEach((item,key)=>{
	if(item.name == "Tom"){
	console.log(key)
	}
})

用find也是一样的

var tmp1 = arr.find(i=>i.name === "Tom")
console.log(tmp1)// {name: "Tom"}
要获取指定属性对应的对象所在的索引,用的是findIndex()

var tmp1 = arr.findIndex(i=>i.name === "Tom")
console.log(tmp1)//1

版权声明:若无特殊注明,本文皆为《 子成君 》原创,转载请保留文章出处。
本文链接:js 对象数组使用indexOf()判断某项是否在数组中返回-1 解决办法 https://old.zcjun.com/learn/509.html
百度收录:本文已被百度收录点击查看详情!
本文到此结束

热门推荐

发表吐槽

你肿么看?

你还可以输入 250 / 250 个字

爱你允悲悲伤吃惊委屈可怜憧憬吃瓜大哭开心坏笑笑哭哼打哈欠鼓掌乖嘘阴险日了狗费解挤眼滑稽666比心


既然没有吐槽,那就赶紧抢沙发吧!