Vue中some和findindex查找下标,哪种方法更高效?
- 内容介绍
- 文章标签
- 相关推荐
本文共计610个文字,预计阅读时间需要3分钟。
`some`函数用于检测数组中是否至少有一个元素满足提供的测试函数。以下是简化的代码及解释:
javascript// some函数用法示例list: [ { id: 1, name: '马奔腾', citme: new Date() }, { id: 2, name: '宝马', citme: new Date() }]-
// 删除指定id的元素this.list.some((item, i)=> { if (item.id===id) { this.list.splice(i, 1); return true; }});
其中,`some`函数会遍历数组`this.list`,对每个元素执行一个测试函数。如果找到一个元素满足条件(即`item.id`等于`id`),则`some`函数立即返回`true`并终止遍历。如果没有找到符合条件的元素,则返回`false`。这段代码用于删除数组中特定id的元素。
some的用法
list:[ {id:1,name:'奔驰',citme:new Date()}, {id:2,name:'宝马',citme:new Date()} ] - // this.list.some((item,i)=>{ // if(item.id==id){ // this.list.splice(i,1) // return true // } // })
其中some是比较list中每一项的id值,然后把这个id值给了item,item.id就代表了list中的每一项id值,如果返回true,就不再往后执行
var index= this.list.findIndex(item=>{ if(item.id==id){ return true } })
findIndex 同理也是遍历list中的id值,item.id就是list中的id值
补充知识:vue处理对象数组(下标和值)
我就废话不多说了,大家还是直接看代码吧~
Storelist(){ this.$api.question().then(res=>{ if (res.status==1){ let that = this let a = res.result.store // a是获取接口的对象数组 console.log(a) console.log(a.length) // 对象数组--数据的长度 var groupCount = Object.getOwnPropertyNames(a).length; console.log(groupCount) // 对象数组的下标 var keys1 = [] for (var p1 in a) { if (a.hasOwnProperty(p1)) keys1.push(p1); } console.log(keys1) //组合数据-拼接成数组 let qqq = [] for (let i=0;i<keys1.length;i++){ console.log(keys1[i]) console.log(a[keys1[i]]) qqq.push({ pid:keys1[i], name:a[keys1[i]] }) } console.log(qqq) } }) },
以上这篇查找Vue中下标的操作(some和findindex)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持易盾网络。
本文共计610个文字,预计阅读时间需要3分钟。
`some`函数用于检测数组中是否至少有一个元素满足提供的测试函数。以下是简化的代码及解释:
javascript// some函数用法示例list: [ { id: 1, name: '马奔腾', citme: new Date() }, { id: 2, name: '宝马', citme: new Date() }]-
// 删除指定id的元素this.list.some((item, i)=> { if (item.id===id) { this.list.splice(i, 1); return true; }});
其中,`some`函数会遍历数组`this.list`,对每个元素执行一个测试函数。如果找到一个元素满足条件(即`item.id`等于`id`),则`some`函数立即返回`true`并终止遍历。如果没有找到符合条件的元素,则返回`false`。这段代码用于删除数组中特定id的元素。
some的用法
list:[ {id:1,name:'奔驰',citme:new Date()}, {id:2,name:'宝马',citme:new Date()} ] - // this.list.some((item,i)=>{ // if(item.id==id){ // this.list.splice(i,1) // return true // } // })
其中some是比较list中每一项的id值,然后把这个id值给了item,item.id就代表了list中的每一项id值,如果返回true,就不再往后执行
var index= this.list.findIndex(item=>{ if(item.id==id){ return true } })
findIndex 同理也是遍历list中的id值,item.id就是list中的id值
补充知识:vue处理对象数组(下标和值)
我就废话不多说了,大家还是直接看代码吧~
Storelist(){ this.$api.question().then(res=>{ if (res.status==1){ let that = this let a = res.result.store // a是获取接口的对象数组 console.log(a) console.log(a.length) // 对象数组--数据的长度 var groupCount = Object.getOwnPropertyNames(a).length; console.log(groupCount) // 对象数组的下标 var keys1 = [] for (var p1 in a) { if (a.hasOwnProperty(p1)) keys1.push(p1); } console.log(keys1) //组合数据-拼接成数组 let qqq = [] for (let i=0;i<keys1.length;i++){ console.log(keys1[i]) console.log(a[keys1[i]]) qqq.push({ pid:keys1[i], name:a[keys1[i]] }) } console.log(qqq) } }) },
以上这篇查找Vue中下标的操作(some和findindex)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持易盾网络。

