2014-06-15 209 views
1

我试图解决的问题很简单,但由于在javacript中有很多(隐藏)的魔术函数,我想知道是否有快速解决方案那。到目前为止,我只看到有人试图知道数组是否包含字符串(布尔值),但这不是我想要实现的。查找包含字符串数组中子字符串的所有字符串

我有一个简单的字符串数组:

myarray的无功= [“字词1”,“单词2”,“土豆”]

如果我要找的串“字”,我想编写一个返回一个只包含原始数组匹配元素的新数组的函数。在这种情况下,它会是:[“word1”,“word2”]。

什么是最好的方法,我必须手动循环和创建新的数组?

谢谢

回答

1

不,你不需要循环。考虑Array.prototype.filter(),这需要一个回调函数作为参数:

arr.filter(callback[, thisArg])

该功能由一个测试您阵列的一个的元件,调用每一个元件上的回调函数。新数组将包含您的回调函数返回true的元素。

来源:Mozilla Developer Network

+0

令人惊叹的,谢谢。我现在就试试这个。这些使用回调函数是一种典型的JavaScript思维方式,我还没有。 – reddy

相关问题