【问题标题】:Angular terminology - Hash objectAngular 术语 - 哈希对象
【发布时间】:2014-02-17 09:10:13
【问题描述】:

我正在阅读 AngularJS 开发人员指南,虽然我对 JavaScript 并不陌生,虽然 Google 与开发人员交谈,但我不理解文档的某些部分。

也就是说,我不明白 散列对象 是什么。我以为我知道 object hash 是什么,但他们使用它的方式不同。我将引用一些引号来说明:

关于$compile函数的作用域参数

如果设置为 {}(对象哈希),则会创建一个新的“隔离”范围

“隔离”范围采用 对象哈希,它定义了一组本地 从父范围派生的范围属性。这些当地 属性对于模板的别名值很有用。当地人 定义是本地范围的散列属性到其来源:

link 用于创建指令的函数

attrs 是一个 散列对象,具有标准化属性的键值对 名称及其对应的属性值

  • 什么是散列对象?它只是一个普通的物体吗?
  • 这个术语是 JavaScript 开发中经常使用的词,还是 Angular 开发者的习惯?
  • 如果哈希对象只是一个对象,那么还有哪些对象呢?
  • object hashhash object 是同一个东西吗?如果是这样,他们可能应该修改他们的文档。

对答案的评论

当我问了几个问题时,每个回答者似乎都对一个部分回答得最好。供日后参考,每一篇都很有价值,值得一读。

【问题讨论】:

  • 是的,就是一个普通的对象。

标签: angularjs terminology


【解决方案1】:
  1. 只是普通的对象
  2. 这只是对象,所以很常见。
  3. Functions-objects
  4. 是的。欢迎 PR :) http://angularjs.org/i-want-to-help

【讨论】:

    【解决方案2】:

    都是一样的。

    按顺序回答您的问题:

    1. 散列对象只是一个对象。在 JavaScript 中,这可以在代码中写成{}(有时称为对象字面量)。如果需要,您还可以使用a = new Object() 创建对象。

    2. 使用该术语。我个人并没有经常注意到 hash object 这个词,因为 JavaScript 对象通常只是被称为对象。

    3. 在 JavaScript 中,只有对象(例如 {} 是一个对象)存在。您可能知道其他语言中的对象有不同的名称:DictionaryHashAssociative Array,仅举几例。需要记住的重要一点是,在 JavaScript 中,对象基本上只是一组键值对(具有字符串类型的键和任意值)。

    4. 是的,是的。

    我在这个答案中说了很多“对象” - 它实际上并不复杂,因为它只是同一事物的多个不同名称..

    【讨论】:

      【解决方案3】:

      什么是哈希对象?它只是一个普通的物体吗?

      在 JavaScript 中,对象被实现为哈希映射(有些人称之为哈希表)。 “Hash object”、“object hash”或只是“object”在文档中似乎不一致地用于指代同一事物。

      这个术语是 JavaScript 开发中经常使用的东西,还是 Angular 开发者的习惯?

      通常,您只会说“对象”或“哈希”。

      如果hash对象只是一个对象,那么还有哪些对象呢?

      在 Angular API 的上下文中,非其他。这一切都只是简单的“对象”。

      对象散列和散列对象是一回事吗?如果是这样,他们应该 可能会修改他们的文档。

      没错。

      【讨论】:

        【解决方案4】:

        当他们说 hashhash objecthash map 等时,都是指{key: 'value'} 语法。显然,value 可以是任何 JavaScript 值。 key 可以命名为变量或字符串。

        但如果他们只说“对象”,这可能意味着很多不同的东西,因为 JavaScript 中的几乎所有东西都是对象。

        From Mozilla Developer Network:

        反对一切

        在 JavaScript 中,几乎所有东西都是对象。全部 除了 null 和 undefined 之外的原始类型被视为对象。他们 可以分配属性(某些类型的分配属性不是 持久性),并且它们具有对象的所有特征。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2019-04-08
          • 2012-05-02
          • 2018-04-02
          • 2012-04-21
          • 2011-03-29
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多