js中字符串的方法汇总

1.charAt();返回字符串的第 n 个字符,如果不在 0~str.length-1之间,则返回一个空字符

var str = "javascript";
str.charAt(2); //'v'
str.charAt(12); //''

2.charCodeAt();方法 :返回索引对应的字符串的ASCII码

charCodeAt(index)

如果 index 是负数,或大于等于字符串的长度,则 charCodeAt() 返回 NaN。
我们将返回位置 1 的字符的 Unicode 编码:

var str="Hello world!"
str.charCodeAt(1)//72

3.string.fromCharCode();方法 :可接受一个指定的 Unicode 值,然后返回一个字符串。

String.fromCharCode(72,69,76,76,79)//HELLO
String.fromCharCode(65,66,67)//abc

4.concat();方法:拼接字符串

var stringValue = "hello ";
var result = stringValue.concat("world");
alert(result);//"hello world"
alert(stringValue);//"hello"

5.slice(a,b);方法: 从索引a开始截取(包括a),一直截取到索引b(不包括b),如果里面只有一个参数,就直接截取到末尾

var str = 'this is awesome';
str.slice(4, -1); //" is awesom"

slice(a,b); 如果里面的参数是负数的话,使用方法跟数组中的slice()方法一样
6.substring(a,b)方法:从索引a开始截取(包括a),一直截取到索引b(不包括b),如果里面只有一个 参数那么就直接截取到末尾
(1)substring(a,b); 如果第一个参数为负数的话,会自动转化为0,从索引0开始截取
(2)substring(a,b); 如果第二个参数为负数的话,会自动转化为0,并且会把第一个参数和第二个参数的位置互换

var str = 'abcdefg';
str.substring(1, 4); //"bcd"
str.substring(1); // "bcdefg"
str.substring(-1); //"abcdefg" 传入负值时会视为0

7.substr(a,c); 方法:
从索引a开始截取c个元素
substr(a,b); 如果第一个参数为负数的话,跟数组中 slice()使用方法一样
substr(a,b); 如果第二个参数为负数,或者两个参数都是负数的话,截取到的是空字符串

var str = "Just give me a reason";
str.substr(5, 10); // "give me a "
str.substr(-4, 2); // "as"

8.indexOf();

indexOf(substr[,start])

返回 substr 在字符串 str 中首次出现的位置,从 start 位置开始查找,如果不存在,则返回 -1。start可以是任意整数,默认值为 0。如果 start < 0 则查找整个字符串(如同传进了 0)。如果 start >= str.length,则该方法返回 -1,除非被查找的字符串是一个空字符串,此时返回 str.length.

var str = "javascript";
str.indexOf('s'); // 1
str.indexOf('s',6); // -1
str.indexOf('',11); // 10
str.indexOf('',8); // 8

9.lastIndexOf();

lastIndexOf(substr[,start])

返回 substr 在字符串 str 中最后出现的位置,从 start 位置 向前开始查找,如果不存在,则返回 -1。

'lastindex'.lastIndexOf('a'); // 1

10.replace();方法 :替换字符串

var str = "do you love me";
str.replace('love','hate'); // "do you hate me"

11.trim();方法:把字符串两边的空格去掉,返回 字符串 的一个副本,不影响字符串本身的值

var str = ' abc ';
str.trim(); // 'abc'
console.log(str); // ' abc '

12.toLowerCase();方法:转小写 并返回 str 的一个副本,不影响字符串本身的值

var str = 'JavaScript';
str.toLowerCase(); // 'javascript'
console.log(str); // 'JavaScript'

13.toUpperCase(); 方法:转大写并返回 str 的一个副本,不影响字符串本身的值

var str = 'JavaScript';
str.toUpperCase(); // 'JAVASCRIPT'
console.log(str); // 'JavaScript'

14.toLocaleCompare();方法:比较
15.search();方法:返回字符串对应的索引
查找 str 与一个正则表达式是否匹配。如果匹配成功,则返回正则表达式在字符串中首次匹配项的索引;否则,返回 -1。如果参数传入的是一个非正则表达式对象,则会使用 new RegExp(obj) 隐式地将其转换为正则表达式对象

var str = 'I love JavaScript!';
str.search(/java/); // -1
str.search(/Java/); // 7
str.search(/java/i); // 7
str.search('Java'); // 7

16.match();方法:返回找到的字符串,没有就返回null

var str = 'Javascript java';
str.match(/Java/); // ["Java"]
str.match(/Java/gi); // ["java", "Java"]
str.match(/ab/g); // null

17.split();方法:用指定的字符串隔开,并以数组的方式返回

var str = "Hello?World!";
str.split(); // ["Hello?World!"]
str.split(''); // ["H", "e", "l", "l", "o", "?", "W", "o", "r", "l", "d", "!"]
str.split('?'); // ["Hello", "World!"]
str.split('',5); // ["H", "e", "l", "l", "o"]
上一篇:js 使用 substr 和substring 的区别记录


下一篇:C/C++编程笔记:C++中的substr()函数,教你具体使用方法