我創建一個哈希表來檢查四個字母的單詞是否有效:爲什麼我的散列表包含虛假值?
function myClickHandler(myClickHandler)
{
var words4=new Array("abed", "abet", "able", "ably", "abut", "aces", "ache", "achy");
// Initialise hash table
var wordhash = new Array();
for (var i in words4)
{
wordhash[ words4[i] ] = true;
};
var text = wordhash['10'];
}
然而,當我檢查哈希表在調試器的第一個元素似乎是:
wordhash['10'] = true
所以我的測試函數中的最後一個語句將變量文本設置爲true。這是爲什麼發生?
感謝
謝謝 - 在你的幫助下,我的程序正在運行;請參閱: http://www.plasticki.com/show?9EE。 我歡迎任何改進建議。 David – johnsondavies
@johnsondavies:你的代碼確實很有趣。但是,我不會建議與'未定義'進行比較。看:'undefined = 1; var a;一個== undefined'會產生'false',因爲undefined不是真的* undefined。相反,使用'typeof something =='undefined''。一些常見的做法是使用'==='而不是'=='和'[]'來代替'new Array()'。 – pimvdb