2014-10-20 48 views
0

对不起,我的英语有点不好。 我想删除最后一个对象。我以这种方式尝试没有。 我希望我能说出来。删除最后一个孩子Json嵌套对象

测试:http://jsfiddle.net/Rizasoylu/hnLadq9v/

我的要求删除OBJ 3。

var oArray = ["obj1","obj2","obj3"]; 
var AccessObject = {}; 
oArray.reduce(function (o, s) { return o[s] = {}; }, AccessObject); 


var AccessObject = {}, o = AccessObject; 

for (var i = 0; i < oArray.length; i++) 
{ 
    o = o[oArray[i]] = {}; 
} 
alert(JSON.stringify(AccessObject)); 
var lastKey = Object.keys(AccessObject).sort().reverse()[0]; 
delete o[lastKey]; 

回答

0

已解决。

for (var i = 0; i < oArray.length; i++) { 
    if (i == oArray.length - 1) { 
     o = o[oArray[i]] = genericObject; 
    } else { 
     o = o[oArray[i]] = {}; 
    } 
} 
0

尝试拼接方法。使用这种JavaScript方法,你可以删除元素。第一个参数定义位置,并且您可以提供要删除多少个元素作为第二个参数

var oArray = ["obj1","obj2","obj3"]; 
oArray .splice(2,1); 
alert(JSON.stringify(oArray)); 
相关问题