JavaScript 数组操作

现有如下数组:

var arr = [
    {
        name: 'Tony',
        age: 54
    },
    {
        name: 'Yuk',
        age: 52
    },
    {
        name: 'Jamo',
        age: 65
    }
];

要将数组元素的 name 属性取出来重新组成一个数组,要求顺序不变,效果如下:

['Tony', 'Yuk', 'Jamo']

不用 for 循环,有别的办法吗?

阅读 6k
5 个回答
var newArr = arr.map(function(item) {
  return item.name;
});

先将arr转换成字符串,再利用正则,匹配age前边的内容

JSON.stringify(arr).match(/[\w]{1,}?(?=","age":)/g)

哈哈,map本事也是循环

var newArr = _.map(arr, function(item){return item.name})
arr.reduce(function(item, next) {
  return item.concat(next.name)
}, [])
推荐问题
宣传栏