目前,我的JSON对象如下所示:
[
["GB", "gib", "gigabyte", "gigabytes"],
["MB", "mib", "megabyte", "megabytes"],
["Television", " Televisions", " TV", " TVs"],
["tryouts", "tryout", "tests", "test", "trial", "experiment"],
["football", "soccer", "Fussball"]
];我最后想看到的是一个新的对象,它看起来像这样:
[
{
synonyms: "GB, gib, gigabyte, gigabytes"
},
{
synonyms: "MB, mib, megabyte, megabytes"
},
{
synonyms: "Television, Televisions, TV, TVs"
},
{
synonyms: "tryouts, tryout, tests, test, trial, experiment"
},
{
synonyms: "football, soccer, Fussball"
}
];任何帮助都是非常感谢的。
发布于 2017-01-26 14:55:27
使用.map()的解决方案
var myArray = [
["GB", "gib", "gigabyte", "gigabytes"],
["MB", "mib", "megabyte", "megabytes"],
["Television", " Televisions", " TV", " TVs"],
["tryouts", "tryout", "tests", "test", "trial", "experiment"],
["football", "soccer", "Fussball"]
];
var synonymArray = myArray.map(function(list) {
return {
synonyms: list.join(", ")
}
})发布于 2017-01-26 14:56:41
使用方法映射(Objects/Array/map)可以很容易地做到这一点。
input = [
["GB", "gib", "gigabyte", "gigabytes"],
["MB", "mib", "megabyte", "megabytes"],
["Television", " Televisions", " TV", " TVs"],
["tryouts", "tryout", "tests", "test", "trial", "experiment"],
["football", "soccer", "Fussball"]
];
output = input.map(function(d) {return {'synonyms':d.join(', ')};});
document.write(JSON.stringify(output));
console.log(output);发布于 2017-01-26 15:03:57
使用for循环并连接:
var newObject = [];
for (var i in originalArray) {
var originalItem = originalArray[i];
var textList = originalItem.join(',');
newObject.push({synonyms:textList});
}https://stackoverflow.com/questions/41876034
复制相似问题