代码之家  ›  专栏  ›  技术社区  ›  Sayed Mohd Ali

如何使用JavaScript检索对象属性值?

  •  -10
  • Sayed Mohd Ali  · 技术社区  · 7 年前

    在下面的代码中, 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]; });
    
    4 回复  |  直到 7 年前
        1
  •  4
  •   AndrewL64    7 年前

    你可以使用 map() 方法以及 ES6 fat arrow function 表达式检索一行中的值,如下所示:

    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);
        2
  •  1
  •   Harish Soni    7 年前

    var users = [ { mobile: '88005895##' },
      { mobile: '78408584##' },
      { mobile: '88008335##' } ];
      
      
    users.map(userData => console.log(userData))
        3
  •  1
  •   JO3-W3B-D3V    7 年前

    JavaScript有一个本机 map process 它只返回 mobile 属性,我的意思是,如果你想做的话,你可以做各种各样的事情,再一次,这只是你想要做的事情的一个例子 能够

    我的意思是你可以把它写在一行上,也就是说。

    const demo = users.map(user => user.mobile);
    

    const users = [ 
      { mobile: '8800589595' },
      { mobile: '7840858487' },
      { mobile: '8800833524' } 
    ];
    
    // Do some magic stuff here...
    const process = u => u.mobile; 
    
    // Map the array...
    const demo = users.map(user => process(user));
    
    // Results...
    console.log(demo);
        4
  •  1
  •   AJAY MAURYA    7 年前

    users = [ { mobile: '88005895##' },
      { mobile: '78408584##' },
      { mobile: '88008335##' } ];
    var numbers = users.map(function(value, index, array){
    	return value;
    	
    	});
    var numbers2 = users.map(function(value, index, array){
    	return value.mobile;
    	});
    var num='';
    users.map(function(value, index, array){
    	num+=value.mobile;
    	return num;
    	});	
    	console.log(numbers);
    	console.log(numbers2);
    	console.log(num);