JavaScript中常用字符串对象汇总
1. 字符方法
①
charAt()
str.charAt(index)
charAt() 返回指定位置的字符
var str = "HELLO WORLD";
var n = str.charAt(2)
consoel.log(n) // L
②
charCodeAt()
str.charCodeAt(index)
charCodeAt() 返回在指定的位置的字符的 Unicode 编码
var str = "HELLO WORLD";
var n = str.charCodeAt(0);
console.log(n) // 72
2. 字符串操作方法
①
concat()
str1.concat(str1, str2, …, strN)
concat()* 用来连接两个或多个字符串并返回一个新字符串
var str = "HELLO"
var str2 = "WORLD"
var resultStr = str.concat(str2)
console.log(str) // HELLOWORLD
②
slice()
str.slice(beginIndex, [, endIndex])
slice() 根据参数从字符串中提取新的字符串并返回,返回的新字符串不包括 endIndex下标
参数 | 说明 |
---|---|
bginIndex | 必需,开始的坐标,在原字符串中的位置 |
endIndex | 可选,结束的坐标,如果不填则默认到字符串结尾 |
注意:
- 若 beginIndex 为负数,那么将记作从0开始, 若 beginIndex 超过字符串长度则str.slice()返回一个空字符串
- bginIndex 和 endIndex 都为下标,是从左到右的顺序提取,如果 bginIndex 为负数 且 endIndex 没有在bginIndex的右边,则返回空字符串
var str="Hello world!";
console.log(str.slice(1,5)) // ello
console.log(str.slice(-3, 11) // ld
①
substring()
str.subString(from, to)
substring() 用于提取原字符串中介于两个指定下标之间的元素返回一个新字符串,返回的新字符串不包括 to下标
参数 | 说明 |
---|---|
from | 必需,开始的坐标,在原字符串中的位置 |
to | 可选,结束的坐标,如果不填则默认到字符串结尾 |
注意:
- 任一参数小于0或者Nan都直接视为0
- 任一参数大于字符串长度一律视为到字符串结尾
- 如果form 大于 to 相当于 substring() 中的两个参数交换,例如: str.substring(1,0) 相当于 str.substirng(0,1)
var str="Hello world!";
console.log(str.substring(3)) // lo world!
console.log(str.substring(3,7)) // lo w
console.log(str.substring(7,3)) // lo w
②
substr()
str.substr(star, length)
substr() 获得从指定位置开始的指定长度的字符
参数 | 描述 |
---|---|
star | 必需,开始的位置,在原字符串中的位置 |
length | 可选,从开始位置指定的长度,不填默认到原字符串结尾 |
var arr = "abcdefg"
console.log(1, 2) // bc
console.log(arr.sbustr(0, 3)) // abc
3. 字符串位置方法
①
indexOf()
str.indexOf(searchValue, startIndex)
indexOf() 返回从左到右查找值在字符串中出现的位置,找不到则返回-1
注意:
- startIndex 是以此下标向右查找
var arr = 'KKKTKKT'
var result = arr.indexOf('T')
var result2 = arr.indexOf('S')
var result3 = arr.indexOf('T', 3)
console.log(result) // 3
console.log(result2) // -1
console.log(result3) // 6
②
lastIndexOf()
str.lastIndexOf(searchValue, startIndex)
lastIndexOf() 返回从右到左查找值在字符串中出现的位置,找不到则返回-1
注意:
- startIndex 是以此下标向左查找
var arr = 'KKKTKKT'
var result = arr.indexOf('T')
var result2 = arr.indexOf('S')
var result3 = arr.indexOf('T', 3)
console.log(result) // 0
console.log(result2) // -1
console.log(result3) // 6
4. 字符串大小写转换方法
①
toLowerCase()
str.toLowerCase()
toLowerCase() 将字符串转换为小写并且返回
var arr = 'KKK'
var result = arr.toLowerCase()
console.log(result) // kkk
②
toUpperCase()
str.UpperCase()
toIpperCase() 将字符串转换为大写并且返回
var arr = 'kkk'
var result = arr.toUpperCase()
console.log(result) // KKK
5. 字符串模式匹配方法
①
match()
str.match(regexp)
match() 查找找到一个或多个正则表达式的匹配并返回
var str="The rain in SPAIN stays mainly in the plain";
var n=str.match(/ain/g);
console.log(b) // ain,ain,ain
②
search()
str.search(regexp)
search() 对正则表达式或者指定字符串进行匹配搜索,返回第一个出现的匹配项的下标
const paragraph = 'The quick brown fox jumps over the lazy dog. If the dog barked, was it really lazy?';
// any character that is not a word character or whitespace
const regex = /[^\w\s]/g;
console.log(paragraph.search(regex));
// expected output: 43
console.log(paragraph[paragraph.search(regex)]);
// expected output: "."
①
replace()
str.replace(regexp|substr, newSubStr|function)
replace() 对正则表达式或字符串进行匹配搜索,并将设置好的NewValue对其进行替换
const p = 'The quick brown fox jumps over the lazy dog. If the dog reacted, was it really lazy?';
const regex = /dog/gi;
console.log(p.replace(regex, 'ferret'));
// expected output: "The quick brown fox jumps over the lazy ferret. If the ferret reacted, was it really lazy?"
console.log(p.replace('dog', 'monkey'));
// expected output: "The quick brown fox jumps over the lazy monkey. If the dog reacted, was it really lazy?"
②
split()
str.split(separator, limit)
split() 指定字符参数将字符串分离成字符数组并返回
参数 | 描述 |
---|---|
separator | 可选, 字符串或者正则表达式,从该参数指定的地方开始分割,并以字符数组返回 |
limit | 可选, 是用来指定返回字符数组的最大长度,如果不填则是返回所有 |
var kk = "ktktktktktktktktktkt"
var keys = kk.split('k')
var keys2 = kk.split('k', 2)
console.log(keys) //["", "t", "t", "t", "t", "t", "t", "t", "t", "t", "t"]
console.log(keys2) // ["", "t"]
6. 去除字符串两边的空白方法
①
trim()
str.trim()
trim() 去除字符串两边的空白并返回一个新字符串
var kk = " hhhh "
console.log(kk.trim()) //hhhh