Javascript 在字符串实践中修改字符
这是一个非常棒的网站 大约两周前,我就开始阅读和练习Javascript了。我在CodeAcademy完成JS课程后发现了一个名为的网站。我正在努力练习其中一种方法。我的代码使用控制台或JSFIDLE工作,我想知道为什么不工作。另外,我知道这个代码有点狡猾,你们能给我一些建议吗 谢谢 声明: 创建一个名为encode()的函数,根据以下模式将给定字符串中的所有小写元音替换为数字: a->1,e->2,i->3,o->4,u->5Javascript 在字符串实践中修改字符,javascript,regex,replace,Javascript,Regex,Replace,这是一个非常棒的网站 大约两周前,我就开始阅读和练习Javascript了。我在CodeAcademy完成JS课程后发现了一个名为的网站。我正在努力练习其中一种方法。我的代码使用控制台或JSFIDLE工作,我想知道为什么不工作。另外,我知道这个代码有点狡猾,你们能给我一些建议吗 谢谢 声明: 创建一个名为encode()的函数,根据以下模式将给定字符串中的所有小写元音替换为数字: a->1,e->2,i->3,o->4,u->5 函数编码(word){ var repa=/a/gi; var
函数编码(word){
var repa=/a/gi;
var repe=/e/gi;
变量repi=/i/gi;
var repo=/o/gi;
var repu=/u/gi;
word=word.toLowerCase();
len=单词长度;
对于(i=0;i
谢谢你们的时间,伙计们。所以我编辑了你们的小提琴,它似乎工作得很好 您只是没有调用函数或打印结果 我添加了自己的fiddle,它只调用函数并提醒值:
function encode(word) {
var repa = /a/gi;
var repe = /e/gi;
var repi = /i/gi;
var repo = /o/gi;
var repu = /u/gi;
word = word.toLowerCase();
len = word.length;
for (i = 0; i < len; i++) {
if (word[i] === 'a') {
word = word.replace(repa, '1');
} else if (word[i] === 'e') {
word = word.replace(repe, '2');
} else if (word[i] === 'i') {
word = word.replace(repi, '3');
} else if (word[i] === 'o') {
word = word.replace(repo, '4');
} else if (word[i] === 'u') {
word = word.replace(repu, '5');
}
}
return word;
}
alert(encode('aeiou'));
函数编码(word){
var repa=/a/gi;
var repe=/e/gi;
变量repi=/i/gi;
var repo=/o/gi;
var repu=/u/gi;
word=word.toLowerCase();
len=单词长度;
对于(i=0;i
要想变得更聪明一点,但不是太聪明,你可以这样做:
function encode(word) {
var letterArray = {a:1,e:2,i:3,o:4,u:5};
word = word.toLowerCase();
len = word.length;
for (i = 0; i < len; i++) {
var re = new RegExp(word[i], "gi");
word = word.replace(re, letterArray[word[i]]);
}
return word;
}
alert(encode('aeiou'));
函数编码(word){
var-letterArray={a:1,e:2,i:3,o:4,u:5};
word=word.toLowerCase();
len=单词长度;
对于(i=0;i
您如何知道它不起作用?您是否收到任何错误消息?如何在页面中调用encode()函数?str.replace(/([aeiou])/g,函数(j,a){return{a:1,e:2,i:3,o:4,u:5}[a]}@DanielSanchez页面上说的是“测试未通过:未知错误”,我这样调用函数:encode(“某物”);我不知道这是否意味着我必须以另一种方式完成挑战,或者这只是我的代码,糟糕透了还是什么!“非常感谢,”罗尔说。现在我知道我的代码是有效的。这只是网站的一个问题。你在那里取得了惊人的进步,我真的很感激。:)非常高兴,劳拉,用Javascript玩得开心吧!:)
function encode(word) {
var letterArray = {a:1,e:2,i:3,o:4,u:5};
word = word.toLowerCase();
len = word.length;
for (i = 0; i < len; i++) {
var re = new RegExp(word[i], "gi");
word = word.replace(re, letterArray[word[i]]);
}
return word;
}
alert(encode('aeiou'));