Javascript 如何将特定的键值对从此数组添加到新数组?

Javascript 如何将特定的键值对从此数组添加到新数组?,javascript,arrays,multidimensional-array,key-value,Javascript,Arrays,Multidimensional Array,Key Value,排列 假设我想将key:failed和值[date3,time3]复制到一个新数组中,我该怎么做?仅使用JavaScript [{ "key":"Passed", "values":[[date1,time1],[date2,time2]] },{ "key":"Failed", "values":[[date3,time3],[date4,time4]] }] var newArray=[]; 对于(var i=0;i,首先您需要通过数组中的对象的键来标识该对

排列

假设我想将key:failed和值[date3,time3]复制到一个新数组中,我该怎么做?

仅使用JavaScript

[{
    "key":"Passed",
    "values":[[date1,time1],[date2,time2]]
},{
    "key":"Failed",
    "values":[[date3,time3],[date4,time4]]
}]
var newArray=[];

对于(var i=0;i,首先您需要通过数组中的对象的键来标识该对象。 假设数组存储在一个名为
mylist

var newArray = [];

for(var i=0; i<=array.length; i++){
 if (array[i]['key'] === "Failed"){
    newArray.push(array[i]);
  }
}
现在假设您有一个新阵列:

var error = mylist.find(function(item){ return item.key === 'Failed'; });
也许有更好的应用程序可以实现这一点。如果你能提供更多关于你想要实现的内容的上下文

编辑

如果您希望从数组中获取每个失败的结果,并将它们分组为一个子集,那么您可能希望用户方法执行以下操作

var failed = []; // your new array
failed.push({
    key: error.key,
    values: error.values[0] // assuming you only want the first value
});

欢迎使用堆栈溢出:)。假设您只想为每个
“失败的”
数组项检索第一个
[date3,time3]
,是否正确?否,我只想要同一数组中特定范围之间的日期。我不确定上面的代码是否能做到这一点。@parvathygeeta不,但我可以编辑它。如果你能在你的问题中解释这一点会很有帮助。你能提供一个数值数组中数据的实际例子吗。
var failed = mylist.reduce(function(mem, item) {
    if(item.key === 'Failed'){
        var transformed = {
            key: error.key,
            values: error.values[0]
        };
        mem.push(transform)
    }
    return mem;
}, []);