Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/75.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
Jquery 从角度对象数组中选择特定特性_Jquery_Arrays_Angularjs_Linq - Fatal编程技术网

Jquery 从角度对象数组中选择特定特性

Jquery 从角度对象数组中选择特定特性,jquery,arrays,angularjs,linq,Jquery,Arrays,Angularjs,Linq,我有一个对象数组,例如下面的一个 [{ "foo" : "a", "bar" : "x", baz: 1}, { "foo" : "b", "bar" : "y", baz: 2}, { "foo" : "c", "bar" : "z", baz: 3}] 现在我只想从这个数组中选择foo属性到另一个数组,如 ["a","b","c"] var fooArray = arrayName.Select(m => m.foo) // c# way 我可以使用循环和将每个属性添加到另一个数

我有一个对象数组,例如下面的一个

[{ "foo" : "a", "bar" : "x", baz: 1},
{ "foo" : "b", "bar" : "y", baz: 2},
{ "foo" : "c", "bar" : "z", baz: 3}]
现在我只想从这个数组中选择foo属性到另一个数组,如

["a","b","c"]
var fooArray = arrayName.Select(m => m.foo) // c# way
我可以使用循环和将每个属性添加到另一个数组中来实现这一点

var fooArray =[];
angular.forEach(arrayName, function (value, key) {
    fooArray.push(value.foo);               
});
但这是可能的,就像我们在c linq select语句中所做的那样,而不需要像这样循环到数组中

["a","b","c"]
var fooArray = arrayName.Select(m => m.foo) // c# way
有没有不使用我们循环的优雅方法?

您可以使用下面的映射功能。这是现代浏览器的脚本,我的意思是它将在IE8+版本中完美工作。它在IE8旧版本中不起作用

根据文件

map方法使用调用 在此数组中的每个元素上提供函数

对数组的每个元素调用已定义的回调函数,然后 返回包含结果的数组


仅供参考IE8不是现代浏览器,不支持该方法。@谢谢您的信息,先生,这就是我提到IE8+浏览器的原因。使用ECMAScript 2015:arrayName.mapm=>m。foo@Vohuman:如何将ECMAScipt与angular混合,我以前从未使用过它?@Chaitanya Gadkari:ECMAScript是JavaScript的基础规范。它仅适用于受支持的浏览器或具有转换器的情况。在这一点上,它只是一个语言特性,它与angular一起工作,因为angular只是一个在语言中运行的框架。