首页 > 解决方案 > JS中相同变量的多个条件

问题描述

嗨,我刚刚开始编码,我正在尝试创建一个函数,该函数将字符串作为参数并从中删除元音,然后返回没有元音的相同字符串。我做这样的事情。

var frase = "Hi how are you"

function removeVowels(frase) {
  var letras = frase.split("")
  
  for (var i = 0; i < letras.lenght; i++){
    if(letras[i] == "a", "e", "i", "o", "u", "A","E","I", "O", "U"){
            continue;
    }
     else{
      frase += letras[i]
      document.write(letras[i])
    }

    
  } 
  return frase;
  
}

var sinVocales = removeVowels(frase)

document.write(sinVocales)

我用 && 和 || 尝试了这样的条件 (letras[i] == "a" || letras[i] == "e" || letras[i] == "i" ... etc )并且它不起作用。我想我在尝试实现该功能时遇到了问题!

谢谢!

标签: javascripthtml

解决方案


  1. 您可以使用正则表达式[aeiou]来测试元音。
  2. 您需要初始化结果字符串以返回而不是返回输入。
  3. 您可以使用for ... of循环字符串的字符而不是split.

var frase = "Hi how are you"

function removeVowels(frase) {
  var str = "";
  for(const ch of frase){
    if(!/[aeiou]/gi.test(ch)){
      str += ch;
    }
  } 
  return str;
}

var sinVocales = removeVowels(frase)

console.log(sinVocales)


推荐阅读