find() 为数组中的每个元素都调用一次执行:
- 当数组中的元素在测试条件时返回true时,find返回符合条件的元素,之后的值不会再调用执行函数。
- 如果没有符合条件的元素返回undefined
var data = [
{
name: 'tianxia',
age: 18,
url: [
{
type: 1,
picUrl: 'http://139.129.164.252:9530/resources/images/robot/finance-merge.png',
thmnailUrl: 'http://139.129.164.252:9530/resources/images/robot/finance-merge.png',
},
{
type: 2,
picUrl: 123,
thmnailUrl: 456
}
]
},
{
name: 'xiaoxiao',
age: 22,
url: [
{
type: 1,
picUrl: 'http://139.129.164.252:9530/resources/images/robot/invoice-distinguish.png',
thmnailUrl: 'http://139.129.164.252:9530/resources/images/robot/invoice-distinguish.png',
},
{
type: 2,
picUrl: 111,
thmnailUrl: 666
}
]
}
]
let dealData = data.map((item,index)=>{
let findData = item && item.url.find((sub)=>{
//返回true
return sub.type === 1;
});
//新增一个属性
item.imgSrc = findData.picUrl;
return item;
})