我对javascript世界有点新鲜。我有个疑问。如何向现有哈希添加/附加新值。示例
var setname = 'set_1', elements = {};
elements[setname] = ['beer','water','wine'];
alert(elements['set_1']);
现在我如何动态添加更多元素到set_1键?喜欢用咖啡茶来扩展set_1。
很抱歉,如果这个问题已经重复并且非常简单,我就进行了搜索。我找到了一篇文章,how to assign variable value as variable name in a hash?
答案 0 :(得分:3)
elements['set_1'].push('foo');
答案 1 :(得分:3)
此处,elements['set_1']
只是普通的Javascript array。它是elements
对象的属性这一事实对它的行为完全无关紧要。您可以使用正常的Javascript方式向其添加项目:使用push
:
elements['set_1'].push('coffee');
elements['set_1'].push('tea');
如果您在编写代码时不知道属性的名称,则可以对变量执行相同的操作:
elements[setname].push('coffee');
elements[setname].push('tea');
答案 2 :(得分:1)
如果set_1的值为array
,您可以执行此操作:
var setname = 'set_1', elements = {};
elements[setname] = ['beer','water','wine'];
elements[setname].push('new item');
alert(elements['set_1']);
但是,如果它不是数组,则需要采取不同的操作。