我现在已经坚持这个问题几天了。我无法根据给定的格式格式化值。
我有2个Array对象。
var name = ["sam","Anthony"];
var age = ["4","10"];
name
和age
数组中可能包含更多值。所以这意味着上面的2个数组是动态的。
我需要从这些数组中提取值并将它们添加到Item
部分,如以下代码所示。但是,我无法对数组内容进行硬编码,因为此数组的大小是动态的。它可能包含更多的学生记录。在那种情况下,在填充params
和name
数组的值后,如何构建以下age
变量?
var params = {
RequestItems: {
"Student": [
{
PutRequest: {
Item: {
"name": "sam",
"age": "4"
}
}
},
{
PutRequest: {
Item: {
"name": "Anthony",
"age": "10"
}
}
}
]
}
};
答案 0 :(得分:2)
使用map
功能:
var names = ["sam", "Anthony"];
var age = ["4", "10"];
var params = {
RequestItems: {
"Student": names.map(function(c, index) {
return {
PutRequest: {
Item: {
"name": c,
"age": age[index]
}
}
};
})
}
};
alert(JSON.stringify(params, null, 4));