如何拆分字符串数组中的每个字符串元素

How to split every string element in an array of Strings?

本文关键字:字符串 元素 数组 拆分 何拆分      更新时间:2023-09-26
    function anagrams(word, words) {
       var returnArray = [];
       var wordToTest= word.split("").sort();
       for(i=0; i<=words.length; i++){
          var wordssToTest = words[i].split("");
          wordssToTest.sort();
          if(wordssToTest==wordToTest){
             returnArray.push(wordssToTest);
          }
       }
     return returnArray;

    }

你好!我需要创建一个函数,其中输入是一个字符串(word)和一个字符串(words)数组。我的目标是返回一个新的数组,它将包含'words'字符串中所有单词的列表,这些单词是'word'字符串的字谜。

我写的代码,但它不识别第5行的words[i].split("")函数,说这是一个未知的属性 undefined.
任何帮助吗?

您在for循环中使用<=而不是<。正确的代码:

function anagrams(word, words) {
       var returnArray = [];
       var wordToTest= word.split("").sort();
       for(i=0; i<words.length; i++){
          var wordssToTest = words[i].split("");
          wordssToTest.sort();
          if(wordssToTest==wordToTest){
             returnArray.push(wordssToTest);
          }
       }
     return returnArray;

    }

这里有一个更简单的解决方案,使用array# filter方法:

function anagrams(word, words) {
  return words.filter(el =>
    word.split('').sort().toString() === el.split('').sort().toString()
  );
}