JavaScript将数组包含某字符串内容的项组成新数组

What is an anagram? Well, two words are anagrams of each other if they both contain the same letters. For example:

'abba' & 'baab' == true
'abba' & 'bbaa' == true
'abba' & 'abbba' == false

Write a function that will find all the anagrams of a word from a list. You will be given two inputs a word and an array with words. You should return an array of all the anagrams or an empty array if there are none.

For example:
console.log(anagrams('abba', ['aabb', 'abcd', 'bbaa', 'dada'])); // ['aabb', 'bbaa']
console.log(anagrams('racer', ['crazer', 'carer', 'racar', 'caers', 'racer'])); // ['carer', 'racer']

my answer:

function anagrams(word, words) {
var arrNew = [];
for(var i = 0; i<words.length; i++){
	if(word.split('').sort().join('')==words[i].split('').sort().join('')){
		arrNew.push(words[i]);
	}    
}
return arrNew;
}
posted @ 2017-08-30 20:38  芒果夏夏  阅读(284)  评论(0编辑  收藏  举报