使用Javascript创建哈希表样式集合
在JavaScript中,我希望通过以下方式创建一个集合- 从一个空集合开始,使用使用Javascript创建哈希表样式集合,javascript,json,collections,hashtable,add,Javascript,Json,Collections,Hashtable,Add,在JavaScript中,我希望通过以下方式创建一个集合- 从一个空集合开始,使用var c=[] 然后我想在其中添加项目;添加后,它将看起来像 { 'buttonSubmit': function() { /* do some work */ } }, { 'buttonCancel': function() { /* do some work */ } } 我必须使用循环逐个添加项,并且记录不是json字符串。我知道push方法,但问题是它创建了我不想使用的索引数组,因为我想使用c['bu
var c=[]代码>
然后我想在其中添加项目;添加后,它将看起来像
{ 'buttonSubmit': function() { /* do some work */ } },
{ 'buttonCancel': function() { /* do some work */ } }
我必须使用循环逐个添加项,并且记录不是json字符串。我知道push方法,但问题是它创建了我不想使用的索引数组,因为我想使用c['buttonSubmit']
或d.buttonSubmit
从集合中检索值。我希望避免循环并比较密钥名
请帮我举一些简单的代码示例。因为您以数组的形式启动了c
,它使用数字索引来引用其中的内容。您想要的是将c
作为一个对象,它使用键引用其中的数据
var c = {};
c.buttonSubmit = function(){...};
c.buttonCancel = function(){...};
//similarly
var c = {
buttonSubmit : function(){...},
buttonCancel : function(){...}
}
//using them via dot notation
c.buttonSubmit();
c.buttonCancel();
//using them via bracket notation
c.['buttonSubmit']();
c.['buttonCancel']();
谢谢让我试试你的解决方案。我把你的答案和这个代码结合起来,完成了我的要求,非常感谢。变量数据={'PropertyA':1,'PropertyB':2,'PropertyC':3};数据[“PropertyD”]=4;//带有4个it警报的对话框(data.PropertyD);警报(数据[“PropertyD”]);