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