我有一个包含对象列表的数组,在这里我需要克隆一个具有" id = 1243"的对象。请帮我这样做。感谢。
list : [
{
name : "someName",
id : 1241,
value : 10,
},
{
name : "someName",
id : 1242,
value : 12,
},
{
name : "someName",
id : 1243,
value : 15,
},
{
name : "someName",
id : 1244,
value : 11,
}
],
答案 0 :(得分:1)
在jquery中使用grep选择特定对象
var obj;
obj= jQuery.grep(list, function( n, i ) {
return n.id==1243;
});
var copy= JSON.parse(JSON.stringify(obj)); // copy the object
or //var newObject = jQuery.extend(true, {}, obj);`
答案 1 :(得分:0)
您可以使用forEach迭代数组,比较Id并在匹配时将对象复制到变量,或者使用lodash的pluck方法。
答案 2 :(得分:0)
也许您可以使用clone()
答案 3 :(得分:0)
试试这个:
arr.push({
name : "someName",
id : 1241,
value : 10,
});
arr.push({
name : "someName",
id : 1242,
value : 12,
});
arr.push({
name : "someName",
id : 1243,
value : 15,
});
var obj;
for(var i=0;i<arr.length;i++)
{
var temp = arr[i];
if(temp.id==1243)
{
obj=temp;
}
}
console.log(obj);//your result
答案 4 :(得分:0)
Demo,试试这个,
var find_id=list[2].id;
console.log(find_id);