2014-06-26 59 views
0

我的代码如下所示。在开始的时候我已经定义了嵌套数组JavaScript从嵌套数组中删除项目

var license= [{ 
    packet: [{ 
     pay: [], 
     channel: [], 
     fun: [] 
    }] 
}]; 

添加项目的工作corect

function addPayChannelToObject(name) { 

    var paychannel = { name: name }; 
    license[0].packet[0].pay.push(paychannel); 

    console.log(pay); 
} 

我怎么能按值删除项目?

function removeItemFromObject(name) { 

    //?? 
    console.log(pay); 
} 
+0

你似乎知道如何访问*嵌套*阵列,以及剩下的问题“的值删除项目”是一个简单的重复。 – Bergi

回答

0

尝试这种方式

function removeItemFromObject(name) { 

    var index = license[0].packet[0].pay.indexOf(name); // found index of value 
    if(index > -1){ 
     license[0].packet[0].pay.splice(index, 1); //remove index 
    } 
    console.log(pay); 
    } 
+0

如果indexOf结果为-1,它将删除最后一个项目,尽管没有找到 –

+0

@BjörnRoberg,感谢您的建议..请参阅更新回答 – Girish