【问题标题】:Why is it pushing the parameter name and not the element? JavaScript为什么要推送参数名称而不是元素? JavaScript
【发布时间】:2017-03-04 11:36:25
【问题描述】:

信息:我正在将一组名称排序为两个数组,一个名称以 A-M 开头,N-Z 在另一个。我希望每个条目都是一个对象,名称作为属性,空字符串作为值,像这样 --> {'Name' : ' '} 但所有条目都是这样 --> {val: ' '}

这就是我推送条目的方式 --> arrAM.push({val: ' '});

问题:我需要如何修改 ^^^^ 这个方法来获取 Name 而不是 val。感谢您的帮助!

var separate = function(array){
  var arrAM = [];
  var arrNZ = [];
  _.each(array, function(val){

    if (/^[a-m]/i.test(val)){
        arrAM.push({val: ''});
    }
    else{
        arrNZ.push({val: ''})
    }
})
return arrAM;
}

【问题讨论】:

    标签: javascript arrays regex sorting object


    【解决方案1】:

    ES6 在对象初始化器中有 computed property names 的语法糖:

    arrAM.push({[val]: ''});
    

    Pre-ES6 要求您在单独的语句中使用括号语法:

    var obj = {};
    obj[val] = '';
    arrAM.push(obj);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-11-24
      • 2018-10-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多