首页 > 解决方案 > 从字符串 javascript 中删除元音,为什么我的解决方案不起作用?

问题描述

我一直在努力从字符串提示中删除元音。由于某种原因,我的代码无法正常工作,我不断收到未定义的消息。有什么建议么?提前致谢!寻找简单易读的代码。有没有办法通过递归来做到这一点?

const removeVowels = function(string){
  let vowels = ['a','e','i','o','u'];
  let vowelIndex = [];
  for(let i=0; i<string.length; i++){
    if(vowels.includes(string[i])){
      vowelIndex.push(i);
    }
  }
  for(let i=0; i<vowelIndex.length; i++){
    string.slice(vowelIndex[i])
  }
}
console.log(removeVowels('happy')); //want 'hppy'

标签: javascript

解决方案


js 中的字符串是可迭代的,因此您可以使用扩展语法来获取字符数组

您可以简单地使用过滤器过滤掉vowels然后使用连接连接字符,您可以再次创建一个字符串。

const removeVowels = function (string) {
  let vowels = ["a", "e", "i", "o", "u"];
  return [...string].filter((c) => !vowels.includes(c)).join("");
};
console.log(removeVowels("happy")); //want 'hppy'


推荐阅读