String
1.0、参考
1.1、var str = 'something' | "something"

创建一个字符串对象。可以用单引号扩起来,也可以用双引号扩起来。

示例:

var str = 'I love you';
var str = "I love you";
var str = ''; //空字符串
var str = ""; //空字符串

注意:这样创建的字符串是值类型的,不是引用类型的。下面的代码可以说明:

var str = 'I love you';
console.log(typeof str); //string
console.log(str instanceof String); //false
1.2、var str = new String(value)

value可以是任意类型。会自动调用它们的toString()

示例:

var obj = new  Object();
var obj = new Object(null);
var obj = new Object(undefined);
1.3、var result = str.toLowerCase()

把字符串中的字母转成小写。

示例:

var us = window.navigator.userAgent.toLowerCase();
1.4、var result = str.toUpperCase()

把字符串中的字母转成大写。

示例:

var us = window.navigator.userAgent.toUpperCase();
1.5、var result = str.startsWith(String prefix)

判断是否以某个字符串开头。

示例:

var urlPath = window.location.pathname;
if (urlPath.startsWith("/index")) {
    //TODO
}

这个方法在IE上不支持。我们自己实现,如下:

String.prototype.startsWith = function(prefix) {
    if (prefix) {
        return this.slice(0, prefix.length) === prefix;
    } else {
        return false;
    }
};
1.6、var result = str.indexOf(String searchValue [, fromIndex])

查找给定字符串searchValuestr中的索引,你也可以指定从哪个索引处开始查找,如果没有找到将返回-1, 依据此,可以判断searchValue是否在str中。

示例:

var ua = window.navigator.userAgent.toLowerCase;
if (ua.indexOf("windows") > -1) {
    //TODO
} else {
    //TODO
}
1.7、var result = str.trim()

去掉str中前后的空白字符。

示例:

var str = ' abc 123 '.trim(); //abc 123
1.8、var result = str.split(String separator)

使用separator把字符串拆分成数组。

示例:

var str = 'a,b,c,d';
var strArray = str.split(',');
strArray.forEach(function(item , index, strArray) {
    //TODO
});
1.9、var result = str.substring(startIndex [, endIndex])

str中截取子字符串。如果没有指定endIndex,那么就截取到字符串的末尾。

示例:

var subStr = '1abcdef'.substring(1);
1.10、var result = str.match(RegExp regexp)

判断str是否与给定的正则表达式regexp匹配。

示例:

var regexp = /ab+c/i;
var str = 'abcd';
if (str.match(regexp)) {
    //TODO
}