更新:讓我詳細說明閉包器:我要求例程的名稱。 我嘗試兌現Principle of least astonishment,命名非常重要。尋找轉換特定哈希鍵和值的算法的名稱
另外:如果這是一個existant常規,我的猜測是,它是有是的客觀的叫法。當我知道這個名字的時候,我只能說出一點,google就可以了。
我需要'轉身'在javascript中的哈希,如下所示。 (這些值始終是數組)。功能turnaround()
不是問題(我已經寫過),但名稱是。
我在這裏究竟做什麼,或者換句話說,這個例程有一個名字?
如果它不是一個衆所周知的算法,我應該如何命名它以便名稱定義它在做什麼?
true == ((h2 == turnaround(h1)) && (h1 == turnaround(h2))
h1 : {
a : [ 2, 3 ],
b : [ 3, 4 ],
c : [ 2, 4 ],
d : [ 1, 5 ] }
h2 : {
1 : ["d"],
2 : ["a","c"],
3 : ["a","b"],
4 : ["b","c"],
5 : ["d"] }
「invertHash」,我想。但說實話,爲什麼你說自己的功能很重要? – Blazemonger
對我來說,沒有這樣的「自己的功能」,我嘗試寫可重用的。恕我直言,命名功能非常重要。一個函數應該只做一件事,名字應該儘可能精確地告訴它是什麼。 – Peter
除了InvertHash對我來說意味着切換鍵和值,以及一個很好的例子,說明錯誤的命名可能會產生誤導。 – Peter