角度术语 - 哈希对象

Nik*_*vić 6 terminology angularjs

我正在阅读AngularJS开发人员指南,尽管我对JavaScript并不陌生,虽然谷歌谈到了开发人员,但我并不了解文档的某些部分.

也就是说,我不明白哈希对象是什么.我以为我知道对象哈希是什么,但他们使用它的方式不同.我会用几句话来说明:

关于$ compile函数的scope参数

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

'isolate'作用域采用一个对象哈希,它定义了一组从父作用域派生的局部作用域属性.这些本地属性对于模板的别名值很有用.Locals 定义是其源的本地范围属性的哈希:

谈谈link创造指令的功能

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

  • 什么是哈希对象?它只是一个普通的物体吗?
  • 这个术语经常用于JavaScript开发,还是Angular开发人员的习惯?
  • 如果哈希对象只是一个对象,那么还存在哪些其他类型的对象?
  • object hashhash object同样的事情?如果是这样,他们应该修改他们的文档.

评论答案:

当我问几个问题时,每个回答者似乎都对单个部分做出了最好的回答.为了将来参考,它们中的每一个都很有价值,值得一读.

OZ_*_*OZ_ 5

  1. 只是普通的对象
  2. 这只是对象,所以这很常见.
  3. 函数对象
  4. 是.欢迎PR:http://angularjs.org/i-want-to-help


Flo*_*ian 4

都是一样的。

按顺序回答您的问题:

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

  2. 使用该术语。我个人并不hash object经常注意到这个术语,因为 JavaScript 对象通常简称为对象。

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

  4. 是的,是的。

我在这个答案中多次提到“对象” - 它实际上并不那么复杂,因为它只是同一事物的多个不同名称。