例如:
var arr = ["tag1, tag2"]
我希望以JSON
格式提供上述数组,如下所示:
var arr = [
{"name": "tag1"},
{"name": "tag2"}
]
有人可以帮我解决这个问题。
答案 0 :(得分:0)
这应该有效:
var arr = ["tag1", "tag2"];
var json= [];
arr.forEach(e => json.push({name:e}));
答案 1 :(得分:0)
您输入的数组应该是,然后您可以使用array.map迭代对象并创建新对象
var arr = ["tag1", "tag2"]
<强>样本强>
var arr = ["tag1", "tag2"];
var newList = arr.map(v => {
return Object.assign({}, { Name: v })
});
console.log(newList);
答案 2 :(得分:0)
您还可以使用map
函数在您的阵列上执行此操作:
var objArray = ["tag1", "tag2"].map(el => {
return { name: el };
});
console.log(objArray);
如果您的问题是有两个不同的数组(如您在上面的评论中提到的那样)并且您想要删除重复的标签,则可以执行以下操作:
var l1 = [
{'id': 2,'name':'tag1'},
{'id': 3, 'name':'tag2'},
{'id': 4, 'name':'tag3'}];
var l2 = [ "tag5", "tag2", "tag3", "tag6" ];
l2 = l2.map(el => {
return { name: el };
});
// concat both the arrays
var src = l1.concat(l2);
// remove duplicates
var temp = [];
const unique = src.filter(item => {
if (temp.indexOf(item.name) === -1) {
temp.push(item.name);
return item;
}
});
console.log(unique);
答案 3 :(得分:-2)
var obj = { "name":"John", "age":30, "city":"New York"};
var myJSON = JSON.stringify(obj);
多数民众赞成......!