扫码关注官方订阅号
比如
var arr=[{name:"Alex"},{name:"Tom"}]; arr.indexOf({name:"Alex"});
认证高级PHP讲师
利用indexOf是判断不了的,返回-1,楼主可以循环判断:
indexOf
for(item of arr){ if(item.name=='Alex'){ alert('find'); } }
对象的数组并不是不能使用 indexOf ,来判断对象在数组的位置。arr.indexOf({name:"Alex"}) 只是你上面的写法 是让数组 去判断一个 新创建的对象,所以会得到 -1例如下面的示例: 演示了如何使用 对象数组的 indexOfvar arr = []var a = {name:"Alex"};var b = {name:"Tom"};arr.push(a,b)JSON.stringify(arr)"[{"name":"Alex"},{"name":"Tom"}]"arr.indexOf(a)0arr.indexOf(b)1arr.lastIndexOf(a)0arr.lastIndexOf(b)1
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
利用
indexOf是判断不了的,返回-1,楼主可以循环判断:对象的数组并不是不能使用 indexOf ,来判断对象在数组的位置。
arr.indexOf({name:"Alex"}) 只是你上面的写法 是让数组 去判断一个 新创建的对象,
所以会得到 -1
例如下面的示例: 演示了如何使用 对象数组的 indexOf
var arr = []
var a = {name:"Alex"};
var b = {name:"Tom"};
arr.push(a,b)
JSON.stringify(arr)
"[{"name":"Alex"},{"name":"Tom"}]"
arr.indexOf(a)
0
arr.indexOf(b)
1
arr.lastIndexOf(a)
0
arr.lastIndexOf(b)
1