重学JavaScript之字符串方法

一、字符串长度(length)正则表达式

var str = 'abcdefg';
console.log(str.length); //7复制代码

二、查找字符串中的字符串数组

 1)indexOf()   返回字符串中指定文本首次出现的索引(位置)bash

var str = 'abcdefg';
str.indexOf('d')        //3复制代码

2) lastIndexOf()   返回字符串中制定文本最后一次出现的索引(位置)编码

var str = 'abcdefgabcd';
str.lastIndexOf('a')     //7复制代码

若未找到查询的文本,两种方法都返回-1;spa

两种方法都接受检索起始位置所谓第二个参数code

var str = "The full name of China is the People's Republic of China.";
var pos = str.indexOf("China", 18);    //51
复制代码

var str = "The full name of China is the People's Republic of China.";
var pos = str.lastIndexOf("China", 50);    //17复制代码

3) 检索字符串中的字符串(search)索引

var str = 'abcdefg';
str.search('d')        //3复制代码

search()和indexOf()这两个方法是类似的,可是也有不一样点:unicode

       ①:search()方法没法设置第二个参数字符串

       ②:indexOf()方法没法设置更强大的搜素值(如正则表达式)string

三、提取部分字符串

1) slice()  提取部分字符串并在新字符串中返回提取的部分

   两个参数(起始位置索引,终止位置索引)

var str = 'Apple, Banana, Mango'
str.slice(3, 10)    //le, Ban
若是某个参数为负,则从字符串的结尾开始计数
复制代码

2)substring()  substring方法很相似于slice方法,不一样是substring方法不接受负数索引

var str = "Apple, Banana, Mango";
var res = str.substring(7,13);        //Banana复制代码

3)substr()    substr() 相似于slice(),不一样的是substr方法第二个参数是截取的字符串的长度

var str = "Apple, Banana, Mango";
var res = str.substr(7,6)       //Banana
若是首个参数为负,则从字符串的结尾计算位置。复制代码

若是省略第二个参数,则该 slicce()和substring(),substr() 将裁剪字符串的剩余部分。

四、替换字符串内容

replace()方法用另外一个值替换在字符串中指定的值

var str = "I am jsKai";
str.replace("js", "jishu");    //I am jishuKai复制代码

replace()方法对大小写敏感,若想对大小写不敏感,则需用正则表达式的/i

var str = "I am jsKai";
str.replace("/JS/I", "jishu");    //I am jishuKai复制代码

五、大小写转换

经过 toUpperCase() 把字符串转换为大写,toLowerCase() 把字符串转换为小写:

var text1 = "Hello World!";       // 字符串
text1.toUpperCase();  // HELLO WORLD

var text2 = "Hello World!";
text2.toLowerCase();    //hello world复制代码

六、concat()方法:链接2个或多个字符串

var text1 = "Hello";
var text2 = "World";
text3 = text1.concat(" ",text2);    //Hello world复制代码

var text = "Hello" + " " + "World!";
var text = "Hello".concat(" ","World!");复制代码

这两行是等效的

七、trim() 删除字符串两边的空白符

var str = " Hello World! ";
alert(str.trim());        // Hello World!复制代码

Internet Explorer 8 或更低版本不支持 trim() 方法。

如需支持 IE 8,您可搭配正则表达式使用 replace() 方法代替:

var str = " Hello World! ";
alert(str.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, ''));复制代码

八、提取字符串字符

1)charAt()方法返回字符串中指定下标(位置)的字符串:

var str = "HELLO WORLD";
str.charAt(0);            // 返回 H复制代码

2)charCodeAt() 方法返回字符串中指定索引的字符 unicode 编码:

var str = "HELLO WORLD";

str.charCodeAt(0);         // 返回 72复制代码

九、把字符串转换为数组(split)

var txt = "a,b,c,d,e";   // 字符串
txt.split(",");          // 用逗号分隔   ["a", "b", "c", "d", "e"]
txt.split(" ");          // 用空格分隔   ["a,b,c,d,e"]
txt.split("|");          // 用竖线分隔   ["a,b,c,d,e"]复制代码

若是分隔符是 "",被返回的数组将是间隔单个字符的数组:

var txt = "Hello";       // 字符串
txt.split("");           // 分隔为字符    //["H", "e", "l", "l", "o"]复制代码
相关文章
相关标签/搜索