如何在Angular JS
中没有迭代的情况下从json中获取“name”中的“value”。例如,我有以下带有名称和值字段的数组,如何在脚本中没有迭代的情况下根据名称“a”检索说出“ABC”值?
$scope.array = [{"name":"a","value":"ABC"},{"name":"b","value":"GHI"},{"name":"c","value":"EFG"}];
我们可以这样做吗?
$scope.value = $scope.array.name["a"].value;
答案 0 :(得分:1)
您可以使用过滤器而不是迭代:
$scope.array.filter(function(obj){ return (obj.name=="a"); })[0].value;//ABC
虽然它也遍历数组。
你也可以在这种情况下使用Underscore.js,它有一个像这样的查找函数:
_.find($scope.array, function(item) {
return item.name == "a";
});
但重点是,所有这些功能,使用一种迭代来给你你想要的。