javascript 如何制作一个函数,在数组中找到所有4个字母,将它们放入一个新的字母中,并返回它

6tr1vspr  于 2023-04-19  发布在  Java
关注(0)|答案(2)|浏览(68)

下面给出的是我写的代码,试图创建一个函数,找到数组中的所有4个字母,将它们放置到一个新的字母上,并返回它。
每当我试着运行下面的代码时,它并没有给予所有4个字母的名称,只有第一个。
我做错了什么?

function friend(friends){
let result = [];
  for (let i = 0; i < friends.length; i++){
    if (friends[i].length == 4) {
        result.push(friends[i]);
        return result;
    }
  }
};

let x = ["Dustin", "Lily", "Steve", "Zed", "Mike"];
sauutmhj

sauutmhj1#

如果我理解正确的话,你需要一个只包含4个字母的名字的数组。如果是这样的话,你可以对名字数组使用filter函数来过滤只有4个字母的名字。下面的代码片段

let x = ["Dustin", "Lily", "Steve", "Zed", "Mike"];
const result = x.filter((name) => name.length === 4);

console.log(result)

希望这能帮上忙。

yyyllmsg

yyyllmsg2#

这段代码似乎不完整,因为return语句在for循环中,这意味着函数将在检查friends数组中长度为4的第一个字符串后退出并返回结果数组。如果你想让函数返回一个包含friends中长度为4的所有字符串的数组,你应该将return语句移出for循环。

function friend(friends) {
      let result = [];
    
      for (let i = 0; i < friends.length; i++) {
        if (friends[i].length == 4) {
          result.push(friends[i]);
        }
      }
    
      return result;
    }

相关问题