【问题标题】:Hashtable style collection creation using Javascript使用 Javascript 创建 Hashtable 样式集合
【发布时间】:2013-04-22 01:57:09
【问题描述】:

在 JavaScript 中,我想通过以下方式创建一个集合 -

var c = []; 的空集合开始

然后我想在其中添加项目;添加后它看起来像

{ 'buttonSubmit': function() { /* do some work */ } },
{ 'buttonCancel': function() { /* do some work */ } }

我必须使用循环逐个添加项目,并且记录不是 json 字符串。我知道 push 方法,但问题是它创建了我不想使用的索引数组,因为我想使用 c['buttonSubmit']d.buttonSubmit 从集合中检索值。我想避免循环并比较键名。

请帮我做一些简单的代码示例。

【问题讨论】:

    标签: javascript json collections hashtable add


    【解决方案1】:

    因为您将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']();
    

    【讨论】:

    • 谢谢。让我试试你的解决方案。
    • 我将您的答案与此代码相结合,并完成了我的要求,非常感谢。 var data = { 'PropertyA': 1, 'PropertyB': 2, 'PropertyC': 3 };数据["属性 D"] = 4; // 带有 4 的对话框 alert(data.PropertyD);警报(数据[“PropertyD”]);
    猜你喜欢
    • 2015-11-11
    • 1970-01-01
    • 2015-12-20
    • 1970-01-01
    • 2011-10-13
    • 1970-01-01
    • 1970-01-01
    • 2019-11-02
    相关资源
    最近更新 更多