2011-08-19 58 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本身有時也稱爲哈希。

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

最後,也是最恰當的,它是俚語詞,意思是「混亂」或「災難」,如「不要做一些事情的散列」。