我想将数组添加为json值。
Json格式如下。
json_data = [
'name':'Testing'
'email':'TestEmail'
'links':[
'test@test.com',
'test@test1.com',
'test@test3.com']
]
如何设置'链接的价值?在这样的javascript中?
我做了如下。
links_array = [];
links_array =['testing','test2'];
json_data.links = links_array;
我想追加这两个字符串,但不能。
任何帮助都会受到赞赏。
答案 0 :(得分:5)
假设您的示例的语法正确,您可以对数组使用“push”方法。
json_data = {
'name':'Testing',
'email':'TestEmail',
'links':[]
};
json_data.links.push("test1@test.com");
json_data.links.push("test2@test.com");
json_data.links.push("test3@test.com");
答案 1 :(得分:0)
你必须做一些改变才能使它发挥作用。
首先,你必须用卷曲的方括号替换初始的方括号。通过这样做,您的对象将成为JSON Literal - 一个键值对。
第二件事,您在'name':'Testing'
和'email':'TestEmail'
下面将完美运作:
var json_data = {
'name':'Testing',
'email':'TestEmail',
'links':[
'test@test.com',
'test@test1.com',
'test@test3.com']
}
答案 2 :(得分:0)
除了@giovannilobitos提到的push
之外,您还可以使用concat
并一次性完成所有操作。
var json_data = {
'name':'Testing',
'email':'TestEmail',
'links':[
'test@test.com',
'test@test1.com',
'test@test3.com'
]
};
var links_array = ['testing','test2'];
json_data.links = json_data.links.concat(links_array);
console.log(json_data.links);

在MDN' array reference上,您可以找到有关如何在JavaScript中修改数组的更完整列表。