我有以下方式的初始数组:
var bankNamesList = [{
'BARODA': 'BARODA'
}, {
'AB': 'AB'
}];
Run Code Online (Sandbox Code Playgroud)
然后我循环这些值并附加到主变量并构建一个下拉列表
var bankNames = '<ul class="root" id="exp-bank-names">';
$.each(bankNamesList, function() {
$.each(this, function(name, value) {
bankNames += '<li><a href="#" name="' + name + '">' + value + '</a></li>';
});
});
bankNames += '</ul>';
$('.submenu-bank-list').html(bankNames);
Run Code Online (Sandbox Code Playgroud)
如何将新值推送到数组中.
我尝试了以下方式,但没有运气.
var nameAttr = 'SBI';
bankNamesList.push({nameAttr:nameAttr});
Run Code Online (Sandbox Code Playgroud)
使用对象文字创建对象及其属性时,字面左侧的名称:(双关语).它不会查找变量名称,而是使用您实际编写的文本.
所以你最后的例子:
var nameAttr = 'SBI';
bankNamesList.push({nameAttr:nameAttr});
Run Code Online (Sandbox Code Playgroud)
实际上就像你写的那样:
bankNamesList.push({ 'nameAttr': 'SBI' });
Run Code Online (Sandbox Code Playgroud)
看起来你可能意味着这样做,类似于bankNamesList数组的其他元素:
bankNamesList.push({ 'SBI': 'SBI' });
Run Code Online (Sandbox Code Playgroud)
你可以这样做:
var nameAttr = 'SBI';
var item = {};
item[nameAttr] = nameAttr;
bankNamesList.push(item);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
17371 次 |
| 最近记录: |