我剛想出了一個inArray實現的JavaScript,它工作正常。 它的怪異,但很短,我也有這種感覺有什麼東西不對的地方,但我不知道它是什麼:使用連接和匹配在JavaScript中實現inArray有什麼問題?
Array.prototype.inArray = function (itm) {
return this.join("|").match(new RegExp('\\b'+itm+'\\b','ig') );
}
UPDATE:這應該是一個InArray的一般實施特徵。我不知道這是比較昂貴,做一個循環或創建一個正則表達式
您的實施的要求是什麼?我們應該比較什麼標準?除非你定義什麼是「正確」,否則我們如何知道是否有什麼「錯誤」? –
你必須逃避每個元素和特殊正則表達式字符的搜索詞。試想如果一個元素包含'|'或'*'或'.'。因此,如果您要反覆遍歷所有元素,則可以直接比較它們。 –
它只適用於字符串? – gosukiwi