2014-06-15 249 views
1

我試圖解決的問題很簡單,但由於在javacript中有很多(隱藏)的魔術函數,我想知道是否有快速解決方案那。到目前爲止,我只看到有人試圖知道數組是否包含字符串(布爾值),但這不是我想要實現的。查找包含字符串數組中子字符串的所有字符串

我有一個簡單的字符串數組:

myarray的無功= [「字詞1」,「單詞2」,「土豆」]

如果我要找的串「字」,我想編寫一個返回一個只包含原始數組匹配元素的新數組的函數。在這種情況下,它會是:[「word1」,「word2」]。

什麼是最好的方法,我必須手動循環和創建新的數組?

謝謝

回答

1

不,你不需要循環。考慮Array.prototype.filter(),這需要一個回調函數作爲參數:

arr.filter(callback[, thisArg])

該功能由一個測試您陣列的一個的元件,調用每一個元件上的回調函數。新數組將包含您的回調函數返回true的元素。

來源:Mozilla Developer Network

+0

令人驚歎的,謝謝。我現在就試試這個。這些使用回調函數是一種典型的JavaScript思維方式,我還沒有。 – reddy

相關問題