首页 > 解决方案 > 如何使用 JavaScript 检索对象属性值?

问题描述

在下面的代码中,users我需要将一个对象转换为仅包含属性值的数组:

users = [
  { mobile: '88005895##' },
  { mobile: '78408584##' },
  { mobile: '88008335##' }
];

期望的输出:

[88005895##,78408584##,88008335##];

以下jQuery代码有效,但我不知道如何使用纯 JavaScript 实现相同的目标:

var objNumber = $.map(users, function(value, index) {
  return [value];
});
console.log(objNumber);

到目前为止我已经尝试过:

var objNumber = Object.keys(users).map(function (key) { return users[key]; });

标签: javascriptjquerynode.jsecmascript-6

解决方案


您可以使用map()方法和ES6 粗 箭头函数表达式来检索一行中的值,如下所示:

users.map(x => x.mobile);

查看下面的代码片段以获取上述ES6 方法的实际示例:

var users = [{mobile:'88005895##'},{mobile:'78408584##'},{mobile:'88008335##'}];
       
var mob = users.map(x => x.mobile);

console.log(mob);


或者,如果您更喜欢没有胖箭头函数的ES5 方法,您可以像这样映射数组:

users.map(function(x) {
  return x.mobile;
});

查看下面的代码片段以获取上述ES5 方法的实际示例:

var users = [{mobile:'88005895##'},{mobile:'78408584##'},{mobile:'88008335##'}];
       
var mob = users.map( function(x) {
  return x.mobile;
});

console.log(mob);


推荐阅读