gpt4 book ai didi

javascript - 在我的例子中如何过滤数组值?

转载 作者:行者123 更新时间:2023-11-30 07:23:26 24 4
gpt4 key购买 nike

我正在尝试根据某些条件将一个值压入数组。

我有类似的东西

var newEmplyee = [];
$scope.employees = [{'id':1, 'new':true},{'id':2, 'new':false}{'id':3, 'new':false}];
newEmployee = $scope.employees.filter(function(emp){
if(emp.new) {
return emp.id
}
})

但是,当我 console.log(newEmployee) 时,我得到了一个类似的对象

{'id':1, 'new':true}

而不仅仅是 id [1]

我不确定这里出了什么问题。谁能帮我解决这个问题?非常感谢!

最佳答案

您可以使用 .filter() 的组合和 .map()

Array.prototype.filter(): The filter() method creates a new array with all elements that pass the test implemented by the provided function

Array.prototype.map(): The map() method creates a new array with the results of calling a provided function on every element in this array.

代码

var newEmployee = $scope.employees.filter(function(emp) {
return emp.new; //Filter new employess
}).map(function(emp) {
return emp.id; //Get Its ID
})

另外:在 {'id':2, 'new':false} 之后缺少 ,

$scope.employees = [{'id':1, 'new':true},{'id':2, 'new':false}{'id':3, 'new':false}];

应该是

    $scope.employees = [{
'id': 1,
'new': true
}, {
'id': 2,
'new': false
} {
'id': 3,
'new': false
}];

var employees = [{'id':1, 'new':true},{'id':2, 'new':false},{'id':3, 'new':false}];

var newEmployee = employees.filter(function(emp) {
return emp.new; //Filter new employess
}).map(function(emp) {
return emp.id; //Get Its ID
});

console.log(newEmployee);

关于javascript - 在我的例子中如何过滤数组值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28623637/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com