Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在我的例子中,如何比较数组?_Javascript_Angularjs_Mapping - Fatal编程技术网

Javascript 在我的例子中,如何比较数组?

Javascript 在我的例子中,如何比较数组?,javascript,angularjs,mapping,Javascript,Angularjs,Mapping,我正在尝试在我的应用程序中进行映射 我有点像 $scope.newProducts = ['123','456','789'] $scope.products = [{'id':'123'}, {'id':'121'}, {'id':'678'}, {'id':'789'}]; 我希望能够在我的产品数组中识别新产品 我有点像 $scope.newProducts.forEach(function(id){ //not sure what is the best way to find

我正在尝试在我的应用程序中进行映射

我有点像

$scope.newProducts = ['123','456','789']

$scope.products = [{'id':'123'}, {'id':'121'}, {'id':'678'}, {'id':'789'}];
我希望能够在我的
产品
数组中识别
新产品

我有点像

$scope.newProducts.forEach(function(id){
    //not sure what is the best way to find new product id in $scope.products
})

我需要在
products
数组中识别
新产品id
。我想知道最好的办法是什么。谢谢你的帮助

您可以在新产品上设置
isNew
标志

$scope.products.forEach(function (product) {
    if ($scope.newProducts.indexOf(product.id) > -1) {
        product.isNew = true;
    }
});
尝试使用这样的库,这样可以使这些类型的操作非常简单

_.each(products, function(item){
    if (_.contains(newProducts, item.id )){
        console.log(item);
    }
});

此结构
$scope.products={'id':'123','id':'121','id':'678','id':'789'}没有任何意义。您正在定义具有重复属性的对象。实际对象上该属性只有一个值。你的意思是这里的某个地方有一个ID数组吗?@jfriend00你是对的。请查看更新的问题。