我正在进行一些练习,并在代码战中碰到这一点。它是一个很简单的指令练习,它创建了一个称为快捷方式的功能,以删除给定字符串中所有小写的元音。
例子:

shortcut("codewars") // --> cdwrs
shortcut("goodbye")  // --> gdby


我是新手,所以我考虑了这个解决方案。但这不起作用,我也不知道为什么

function shortcut(string){
  // create an array of individual characters
  var stage1 = string.split('');

  // loop through array and remove the unneeded characters
  for (i = string.length-1; i >= 0; i--) {
  if (stage1[i] === "a"||
      stage1[i] === "e"||
      stage1[i] === "i"||
      stage1[i] === "o"||
      stage1[i] === "u") {
    stage1.splice(i,1)
    ;}
  };

  // turn the array back into a string
    string = stage1.join('');
    return shortcut;
}


我的直觉告诉我,可能会喜欢拆分和合并而不创建“ true”数组和字符串。

首先,我使用正则表达式进行了操作,以使其更可重用,但这是一场噩梦。我很乐意就实现同一件事的其他方法提出建议。

最佳答案

使用正则表达式:



var str = 'codewars';

var regex = /[aeiou]/g;

var result = str.replace(regex, '');

document.write(result);

10-07 23:20