信息: 我正在将一个名称数组排序为两个数组,一个名称以 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;
}
最佳答案
ES6 有一个语法糖 computed property names在对象初始值设定项中:
arrAM.push({[val]: ''});
ES6 之前的版本要求您在单独的语句中使用方括号语法:
var obj = {};
obj[val] = '';
arrAM.push(obj);
关于javascript - 为什么它推送参数名称而不是元素? JavaScript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40188819/