JavaScript/Prototype.js:从JSON对象中删除属性

问题描述:

var myJsonObj = {"employees":[{"name":"John", "lastName":"Doe", "age": 55},{"name":"Jane", "lastName":"Doe", "age":69}]}; 

如何删除myJsonObj.eployees [1]?JavaScript/Prototype.js:从JSON对象中删除属性

谢谢:)

+3

注意:JSON对象不存在,JSON是数据交换格式。这只是一个常规的对象。 – Guffa 2010-02-15 08:01:14

delete myJsonObj.employees[1]; 

然而,这将让所有其他元素的索引。如果你想重新排序的指标,也可以使用这样的:

// store current employee #0 
var tmp = myJsonObj.employees.shift(); 
// remove old employee #1 
myJsonObj.employees.shift(); 
// re-add employee #0 to the start of the array 
myJsonObj.employees.unshift(tmp); 

或者你用简单的达林·季米特洛夫拼接解决方案(见下面他的回答)。

+0

感谢Boldewyn! :) – 2010-02-15 07:27:57

+0

不客气。 – Boldewyn 2010-02-15 08:19:21

使用delete

delete myJsonObj.employees[1] 

或将其设置为null

myJsonObj.employees[1] = null; 

也不会影响以下从数组中删除的元素的任何元素的索引。

myJsonObj.employees.splice(1, 1); 
+1

哇,我喜欢它。谢谢! – 2010-02-15 07:30:25