2011-08-19 42 views
2

我在阅读the annotated source code of backbone.js,它提到了“属性散列”。那是什么?“属性散列”,那是什么?

在对象上设置模型属性的散列,点击“更改”,除非您选择使其静音。

我的理解是它是一个对象,数组等等,或者散列是否特指任何格式?

+5

请添加一个链接或引用文档的一部分。没有语境,我们无法帮助很多。 –

+0

你认为我在什么时候知道你正在谈论的JavaScript中的一些API的文档? – Incognito

+0

好的。我认为这是一个通用的术语。 –

回答

1

什么这是一个对象,真正做到:

var attributes = { 
    option1: 'on', 
    option2: 'off', 
    option3: true, 
    option4: 145 
}; 

alert(attributes.option1); // on 
+0

http://www.w3schools.com/js/js_objects.asp,因为这页的注释: “对象写为名称值对(名字:‘Doe的’)类似于:在PHP 关联数组 在C,C++,C#,Java,Perl和Ruby中散列表,哈希映射或哈希。 Python中的字典。“。我想我们可以说属性的散列与说“属性”的“集合”相同。强调“设定”,因为它们必须是独一无二的。 –

+0

也许他使用“散列”而不是“设置”来避免在模型上设置“设置”属性(一个或多个)。 :) –

+0

@PhilipMurphy:他使用“散列”,因为它是正确的; “set”通常指的是唯一值,而不是唯一键和任意值。 – Ryan

0

散列,如果我正在考虑您的想法,指的是带有href属性的元素的href属性中的所有内容,从#开始。它是一个字符串。

0

我觉得这是你指的

http://jsfiddle.net/efortis/JPq7B/

var hash = new Array(); 
hash['first'] = 1; 
hash['second'] = 2; 
hash['third'] = 3; 

alert(hash['first']); 

//output: 1 
1

从 “散” 一词的所有实例的背景下在backbone.js文档中,我建议作者使用它来引用数据容器,表示“索引”或“句柄”到任意属性类型的映射。

这可以被认为是the more general "hash" concept的实现,但我必须正确研究代码以确保它合适。老实说,他写的“哈希”在那里,我只是读“映射”—,或者因为我们在说Javascript,甚至只是“对象”。

0

散列可能意味着数量巨大的事物。

很多前PERL家伙用它来表示“字典”(或“映射”或"associative array"),该字典通常与hash tables实施wholly inadequate reason,这就是我认为它被用来在这里的意思。

它也可以表示algorithm用于产生散列表的数字,它可以表示该算法产生的数字;作为动词,它意味着应用该算法。

这也意味着#字符(在美国键盘上的3的转变);与网址一起使用,则表示该字符加上其右侧的所有内容。由于在这种意义上显示带有非空“哈希”的URL会使浏览器尝试滚动,因此具有该ID的第一个元素位于顶部,而ID本身有时也称为哈希。

在一些地方,散列是一种食物,碎牛肉和碎土豆的混合物,是一种非常平淡的辣椒。

最后,也是最恰当的,它是俚语词,意思是“混乱”或“灾难”,如“不要做一些事情的散列”。