**例如:找到 objList 中 name是 demo1 demo2 demo 的对象 并返回
例如返回结果为:[{name:‘demo1’,value:1},{name:‘demo2’,value:2},{name:‘demo3’,value:3}]
**
var list = ['demo1','demo2','demo3']
var objList = [
{
name:'demo1',
value: 1
},
{
name: 'demo2',
value: 2
},
{
name: 'demo3',
value: 3
},
{
name: 'demo4',
value: 4
},
{
name: 'demo5',
value: 5
},
{
name: 'demo1',
value: 1
}
]
console.log(fn(list, objList, 'name'))
直接上代码
/*
list:属性名为 ... ... 的值 type Array
objList: 需要在这个数组对象中找 type Array
attrName: 属性名 type string
*/
function fn(list,ObjList,attrName){
if (!Array.isArray(list) || !Array.isArray(ObjList) || attrName === undefined ) {
return -1
}
var newList = []
list.forEach(function (v) {
for (var i = 0; i < objList.length; i++) {
if (objList[i][attrName] === v) {
var isExist = false
newList.forEach(function (value) {
if (value[attrName] === v) {
isExist = true
}
})
if (!isExist) {
newList.push(objList[i])
}
}
}
})
return newList
}