Swapcase Javascript

时间:2016-02-01 01:45:30

标签: javascript

我肯定会坚持这个,可以使用你的帮助。你觉得怎么样?

var swapcase = function(str) {
    var string = str.split("");
    for (var i = 0; i < string.length; i++) {
        if (str.charAt(i) <= 'a' && str.charAt(i) >= 'z') {
            str.charAt(i).toUppercase();
        } else if (str.charAt(i) <= 'A' && str.charAt(i) >= 'Z') {
            str.charAt(i).toLowercase();
        }
    }
    str = letters.join("");
    console.log(str);
    var text = "Life is 10% what happens to you, and 90% of how you REACT to it";
    swapCase(text);
};

1 个答案:

答案 0 :(得分:2)

您的代码有一些错误:

  1. JavaScript区分大小写:名为swapcaseswapCase
  2. 的函数
  3. string不是一个很棒的变量名,特别是因为你在函数末尾用不同的名称letters)来引用它。
  4. 您的比较运算符已反转。试试>= 'a'<= 'z'
  5. JavaScript区分大小写:您应该致电toUpperCasetoLowerCase
  6. 除了在函数内部之外,你永远不会调用swapCase
  7. 固定版本:

    var swapCase = function(str) {
        var letters = str.split("");
        for (var i = 0; i < letters.length; i++) {
            if (str.charAt(i) >= 'a' && str.charAt(i) <= 'z') {
                letters[i] = str.charAt(i).toUpperCase();
            } else if (str.charAt(i) >= 'A' && str.charAt(i) <= 'Z') {
                letters[i] = str.charAt(i).toLowerCase();
            }
        }
        str = letters.join("");
        console.log(str);
        return str;
    };
    
    var text = "Life is 10% what happens to you, and 90% of how you REACT to it";
    swapCase(text);
    

    测试角色大小写的简单方法是:

    if (str.charAt(i).toLowerCase() === str.charAt(i)) {
        // Character is lower case or not a letter
    } else {
        // Character is upper case
    }