在JavaScript中,如果我将其拆分为数组,然后加入它,我将如何保留句子中的空格?

时间:2013-11-08 18:33:14

标签: javascript regex string

我正在使用这些说明进行coderbyte挑战:

使用JavaScript语言,让函数LetterChanges(str)获取传递的str参数,并使用以下算法对其进行修改。将字符串中的每个字母替换为字母表后面的字母(即c变为d,z变为a)。然后大写这个新字符串(a,e,i,o,u)中的每个元音,最后返回这个修改后的字符串。

我的代码执行说明所说的内容,但它不会保留原始句子的空格。

function LetterChanges(str) {
    var chars = str;
    var newStr = [];

    for (var i = 0; i < str.length; i++) {
        if (/[a-y]/ig.test(chars[i])) {
            newStr[i] = String.fromCharCode(chars[i].charCodeAt(0) + 1);

            if (/[aeiou]/ig.test(newStr[i])) {
                newStr[i] = newStr[i].toUpperCase();
            }
       } else if (/[z]/ig.test(chars[i])) {
            newStr[i] = "A";
       }
    }

    return newStr.join(''); 
}

LetterChanges("Argument goes here"); // result should be: BshvnfOUhpftIfsf

有没有办法让空格与原始字符串保持一致?

1 个答案:

答案 0 :(得分:0)

添加

else newStr[i]= chars[i];

到if / else

的末尾