【问题标题】:In JavaScript terms how do you name this kind of object?在 JavaScript 术语中,您如何命名这种对象?
【发布时间】:2011-08-01 13:32:23
【问题描述】:

在 JS 术语中你如何命名这种对象:

var a = {"a":"wohoo", 2:"hello2", "d":"hello"};

我相信它不是一个数组,因为它没有定义“长度”属性。

那是什么?

谢谢

【问题讨论】:

    标签: javascript arrays


    【解决方案1】:

    它被称为文字符号。亲爱的,它非常强大,几乎取代了该领域的旧 XML。在下面的示例中,使用了两个符号,两者具有相同的目的。

    var userObject = { 名称:'user1', 年龄:24, 运行:功能(目的地){ //让男人跑起来 } };

    var userObject = {};用户对象.name = “用户1”;用户对象.age = 24; 用户对象.run = 功能(目的地){ //让这个人跑 };

    所以现在出现了新的热门话题,无论是 AJAX(异步 JavaScript 和 XML)还是 AJ(异步 JavaScript)。将其称为 JSON 的新东西分开。检查以下内容以更好地理解这件事。

    http://en.wikipedia.org/wiki/JSON http://msdn.microsoft.com/en-us/library/bb299886.aspx

    【讨论】:

      【解决方案2】:

      它是一个对象(它像一个哈希一样工作)。

      您可以转到http://javascript.crockford.com/ 以获取有关 javascript 的更多详细信息。

      【讨论】:

        【解决方案3】:

        根据 Mozilla,它是一个object literal

        对象字面量是对象的零或多对属性名称和关联值的列表,用花括号 ({}) 括起来。您不应该在语句的开头使用对象字面量。这将导致错误或行为不符合您的预期,因为 { 将被解释为块的开头。

        【讨论】:

          【解决方案4】:

          它是一个对象。

          在 Chrome 中:

          >> ({"0": 1}).toString()
          "[object Object"]
          

          【讨论】:

            【解决方案5】:

            它只是一个对象,即Object 的一个实例。和做的一样:

            var a = new Object();
            a.a = "wohoo";
            a["2"] = "hello2";
            a.d = "hello";
            

            【讨论】:

              【解决方案6】:

              这只是一个普通的对象。

              初始化器被称为对象字面量。

              【讨论】:

              • 但是为什么要使用双引号来表示属性名称?这是必须的吗?还是赋予不同的含义?
              • @pencil:它是可选的,但如果名称不是有效的标识符,它是必需的。在 JSON 中,它始终是必需的。
              • 其实我已经在这里看到了这句话作为 JS 中的 Dictionary 实现:stackoverflow.com/questions/5594850/…
              • @pencil:是的;那是一回事。
              猜你喜欢
              • 2017-10-12
              • 1970-01-01
              • 1970-01-01
              • 2014-05-23
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2018-11-23
              • 1970-01-01
              相关资源
              最近更新 更多