实现函数 ToLowerCase(),该函数接收一个字符串参数 str,并将该字符串中的大写字母转换成小写字母,之后返回新的字符串。 

示例 1:
输入: "Hello"
输出: "hello"

示例 2:
输入: "here"
输出: "here"

示例 3:
输入: "LOVELY"
输出: "lovely"

 

解法一: 不是那么了解就没有用ASCII码了,大写完全一致时replace()替换成小写。

/**
 * @param date 2018/11/10 晚上
 */
var toLowerCase = function(str) {
    var upper = {"a":"A","b":"B","c":"C","d":"D","e":"E","f":"F","g":"G","h":"H",
    		"i":"I","j":"J","k":"K","l":"L","m":"M","n":"N","o":"O","p":"P", "q":"Q",
        	"r":"R","s":"S","t":"T","u":"U","v":"V","w":"W","x":"X","y":"Y","z":"Z"}

    for(var i in str){
        for(var j in upper){
            if(str[i]===upper[j]){
                str=str.replace(str[i],j)
            }
        }
    }
    return str;
};

解法1.1 :

 O(n) 时间复杂度

var toLowerCase = function(str) {
    var lower={"A":"a","B":"b","C":"c","D":"d","E":"e","F":"f","G":"g","H":"h","I":"i",
                "J":"j","K":"k","L":"l","M":"m","N":"n","O":"o","P":"p","Q":"q","R":"r",
                "S":"s","T":"t","U":"u","V":"v","W":"w","X":"x","Y":"y","Z":"z"}

    for(var i in str){
        if(str[i]>'Z' || str[i]<'A') continue;
            str=str.replace(str[i],lower[str[i]])        
        
    }
    return str;

}

 

 

解法二:

var toLowerCase = function(str) {
    var upper = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
    var lower = 'abcdefghijklmnopqrstuvwxyz';
    for(var i in str){
        for(var j in upper){
            if(str[i]===upper[j]){
                str=str.replace(str[i],lower[j])
            }
        }
    }
    return str;
};