Javascript 如何在保留两个值的同时将两个对象合并到不同的数组中?
这段代码适用于一条记录,但我正试图使它适用于约500条记录的数组Javascript 如何在保留两个值的同时将两个对象合并到不同的数组中?,javascript,arrays,json,Javascript,Arrays,Json,这段代码适用于一条记录,但我正试图使它适用于约500条记录的数组 var aaa = { aaa_id: 123, abbr_name: "j_doe", name: "john doe" } var bbb = { bbb_id: 789, } for (var attrname in bbb) { aaa[attrname] = bbb[attrname]; } console.log(aaa.aaa_id) 这将产生: Object {a
var aaa = {
aaa_id: 123,
abbr_name: "j_doe",
name: "john doe"
}
var bbb = {
bbb_id: 789,
}
for (var attrname in bbb) {
aaa[attrname] = bbb[attrname];
}
console.log(aaa.aaa_id)
这将产生:
Object {aaa_id: 123, abbr_name: "j_doe", name: "john doe", bbb_id: 789}
以下是我的JSON对于其他记录的外观:
var aaaRecords [ {
"first_name": "Hasheem",
"last_name": "Thabeet",
"aaa_player_id": "4562"
},
...
]
var bbbRecords [{
"first_name": "Hasheem",
"last_name": "Thabeet",
"aaa_player_id": "4562"
},
....
]
关于如何使这个函数与这些数组一起工作,有什么想法吗?非常感谢你的帮助 这已经过测试:
<html>
<head>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script language="javascript">
var aaaRecords = [{
"first_name": "Hasheem",
"last_name": "Thabeet",
"aaa_player_id": "456"
},{
"first_name": "Mariah",
"last_name": "Carey",
"aaa_player_id": "721"
}];
var bbbRecords = [{
"first_name": "Hasheem",
"last_name": "Thabeet",
"bbb_player_id": "489"
},{
"first_name": "Mariah",
"last_name": "Carey",
"bbb_player_id": "198"
}];
$(document).ready(function() {
mergeRecords(function() {
displayRecords();
});
});
function mergeRecords(callback) {
for (var i = 0; i < aaaRecords.length; i++) {
aFName = aaaRecords[i].first_name;
aLName = aaaRecords[i].last_name;
for (var j = 0; j < bbbRecords.length; j++) {
bFName = bbbRecords[j].first_name;
bLName = bbbRecords[j].last_name;
bPlayerID = bbbRecords[j].bbb_player_id;
if (aFName == bFName && aLName == bLName) {
aaaRecords[i].bbb_player_id = bPlayerID;
}
}
} callback();
}
function displayRecords() {
for (var i = 0; i < aaaRecords.length; i++) {
$('#results').append('<tr><td>' +
aaaRecords[i].first_name + '</td><td>' +
aaaRecords[i].last_name + '</td><td>' +
aaaRecords[i].aaa_player_id + '</td><td>' +
aaaRecords[i].bbb_player_id + '</td></tr>');
}
}
</script>
</head>
<body>
<table id="results" border="1" cellpadding="2" cellspacing="2" width="400">
<tr>
<th>First Name:</th>
<th>Last Name:</th>
<th>Player ID (a):</th>
<th>Player ID (b):</th>
</tr>
<!-- Display results here -->
</table>
</body>
</html>
var aaaRecords=[{
“名字”:“哈希姆”,
“姓氏”:“Thabeet”,
“aaa玩家id”:“456”
},{
“名字”:“玛丽亚”,
“姓”:“凯莉”,
“aaa玩家id”:“721”
}];
变量bbbRecords=[{
“名字”:“哈希姆”,
“姓氏”:“Thabeet”,
“BBU玩家id”:“489”
},{
“名字”:“玛丽亚”,
“姓”:“凯莉”,
“BBU玩家id”:“198”
}];
$(文档).ready(函数(){
合并记录(函数(){
显示记录();
});
});
函数合并记录(回调){
对于(变量i=0;i
结果输出:
阵列的长度是否相同?是否只有两个数组?不,数组的长度不同,但将只有两个数组如果数组不平行,则不清楚应该如何执行合并。我会使用下划线示例,看看是否找不到可以修改的相近内容。