我说下面有一个数据集。如何推送数据,以便推送的唯一数据是1993年的数据。
这就是它 var newdata = []
当我推送数据时
newdata = [
{
"name": "mary",
"year": "1993",
"score": 20
},
{
"name": "jane",
"year": "1993",
"score": 40
}]
//旧数据
data =
[
{
"name": "mary",
"year": "1993",
"score": 20
},
{
"name": "jane",
"year": "1993",
"score": 40
},
{
"name": "eric",
"year": "1995",
"score": 20
}
]
答案 0 :(得分:0)
有三个(显然更多)数组函数对于理解很重要:
所以有两种选择:
data.forEach( function(d) { if (d.year === "1993") newdata.push(d)});
或
newdata = data.filter(function(d) { if (d.year === "1993") return true; });
答案 1 :(得分:0)
我认为这是最明显和最简单的方法。
只需迭代您当前的值,如果符合您的条件,请将它们推入新阵列。
这不是一个花哨的解决方案,也不是一个好的风格'您甚至可能想要检查obj.hasOwnProperty('year')
,但如果没有更深入的Javascript-Arrays知识,它很容易理解。