Javascript:在json对象中添加/删除json元素
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/38010518/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
Javascript : add/remove json element in json object
提问by lokeshkumar
I need to modify my JSON Object by add/remove Json element. Here is my JSON Object,
我需要通过添加/删除 Json 元素来修改我的 JSON 对象。这是我的 JSON 对象,
var candidate = {
"name":"lokesh",
"age":26,
"skills":[
"Java",
"Node Js",
"Javascript"
]
};
I need to remove the element "skills" and output should be like,
我需要删除元素“技能”,输出应该是这样的,
{
"name":"lokesh",
"age":26
}
And I again I need to add the element "skills" as string and the output should be like,
我再次需要将元素“技能”添加为字符串,输出应该是这样的,
{
"name":"lokesh",
"age":26,
"skills":"javascript"
}
Please help,
请帮忙,
Thanks in advance.
提前致谢。
回答by Praveen
Other ways it can be achieved.
可以通过其他方式实现。
For Adding:
添加:
candidate["skills"] = "javascript";
For Deleting:
删除:
var skill = "javascript";
delete candidate[skill];
or
或者
delete candidate.skills;
回答by Subburaj
For removing:
用于去除:
candidate.delete("skills");
For adding:
添加:
candidate.skills = "javscript"
回答by Ninju
Removing a property of an object can be done by using the delete keyword:
可以使用 delete 关键字删除对象的属性:
candidate.delete("skills");
OR
或者
delete candidate["skills"];
To add a property to an existing object in JS you could do the following.
要将属性添加到 JS 中的现有对象,您可以执行以下操作。
candidate["skills"] = "javscript";
OR
或者
candidate.skills = "javscript";
https://developer.mozilla.org/en-US/docs/JavaScript/Guide/Working_with_Objectshttps://developer.mozilla.org/en-US/docs/JavaScript/Reference/Statements/for...inhttps://developer.mozilla.org/en-US/docs/JavaScript/Reference/Operators/delete
https://developer.mozilla.org/en-US/docs/JavaScript/Guide/Working_with_Objects https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Statements/for...in https: //developer.mozilla.org/en-US/docs/JavaScript/Reference/Operators/delete
回答by mauretto
For removing:
用于去除:
How do I remove a property from a JavaScript object?
For adding, just set the new value for that property.
要添加,只需为该属性设置新值。
回答by Abhijit
You can directly assign "javscript" to "skills" key.
您可以直接将“javscript”分配给“技能”键。
var candidate = {
"name":"lokesh",
"age":26,
"skills":[
"Java",
"Node Js",
"Javascript"
]
};
You can directly do this.
您可以直接执行此操作。
candidate.skills = "javascript";
Or you can delete the "skills" key and add it again.
或者您可以删除“技能”键并重新添加。
e.g.
例如
delete candidate["skills"];
candidate["skills"] = "javascript";
回答by Hith
You should use delete method to delete members of an object.
您应该使用 delete 方法删除对象的成员。
delete candidate.skills;
Note: You cannot delete objects or functions in the global scope with deletekeyword. However you can delete a function which is a member of an object.
注意:不能使用delete关键字删除全局范围内的对象或函数。但是,您可以删除作为对象成员的函数。
回答by Pablo Abad
This piece of coude should do it:
这段代码应该这样做:
var candidate = {
"name":"lokesh",
"age":26,
"skills":[
"Java",
"Node Js",
"Javascript"
]
};
delete candidate.skills;
console.log(candidate);
candidate["skills"] = "javascript";
console.log(candidate);
回答by Moaz Salem
this is your json object
这是你的 json 对象
var candidate = {
"name":"lokesh",
"age":26,
"skills":[
"Java",
"Node Js",
"Javascript"
]
};
to read any prop you can call like:
阅读您可以调用的任何道具,例如:
var name = candidate.name; or candidate[0].name
var age = candidate.age; or candidate[0].age;
var skills = candidate.skills; or candidate[0].skills;
to write any of prop: candidate.name = 'moaz'; candidate.age = 35;
写任何道具:Candidate.name = 'moaz'; 候选人.年龄 = 35;
remove skills value:
移除技能值:
candidate.skills = null; or candidate.skills = '';
here skills is list of json if I use as string value or list of string:
如果我用作字符串值或字符串列表,这里的技能是 json 列表:
candidate.skills = 'javasccript'; //Use skills as string value
candidate.skills.push('javascript'); //Use skills as list of string
to read skills:
阅读技巧:
for (var i = 0; i < candidate.skills.length; i++) {
var skill = candidate.skills[i];
}