【问题标题】:How to split every string element in an array of Strings?如何拆分字符串数组中的每个字符串元素?
【发布时间】:2017-03-12 03:08:25
【问题描述】:
    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;


    }

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

我写了代码,但它无法识别第 5 行的 words[i].split("") 函数,说它是未定义的未知 属性..
有什么帮助吗?

【问题讨论】:

    标签: javascript arrays string


    【解决方案1】:

    您在 for 循环中使用了 &lt;= 而不是 &lt;。正确代码:

    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;
    
    
        }
    

    【讨论】:

      【解决方案2】:

      这是使用Array#filter 方法的更简单的解决方案:

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

      【讨论】:

        猜你喜欢
        • 2015-01-23
        • 1970-01-01
        • 2021-08-06
        • 2022-11-16
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-03-25
        • 2011-04-13
        相关资源
        最近更新 更多