javascript 对字符串的常用操作方法大全:
chatAt()
charCodeAt()
fromCharCode()
indexOf()
lastIndexOf()
concat()
match()
replace()
search()
slice()
split()
substr()
substring()
toUpperCase()
toLowerCase()
1、charAt() --- 创建副本 返回字符串中指定位置的字符
let str = 'dengZiYao';
str.charAt(param)
// charAt()接受一个number类型的必须参数
// 当 charAt() 的 参数为空 或者 为 NaN 时 将返回字符串中的第一个字符
console.log(str.charAt(3)) // g
console.log(str.charAt()) // d
console.log(str.charAt(NaN)) // d
2、charCodeAt() --- 创建副本 返回字符串中指定位置字符的 Unicode 编码
str.charCodeAt(3) // 103
3、fromCharCode --- 创建副本 接受一个指定的 Unicode 值,然后返回一个字符串
String.fromCharCode(unicode1,unicode2,...,nuicodeX) 2 3 // 该方法是 String 的静态方法,语法应该是 String.fromCharCode()。
4、indexOf --- 返回字符串中某个字符 首次出现 的位置
// 语法 stringObject.indexOf(searchvalue,fromindex)
// searchvalue 为要检索的字符(必须参数)
// fromindex 定义从字符串哪个位置开始检索字符(被必须参数)
//若检测一个不存在的字符 则返回 -1
let str = 'dengZiYao dengZiYao';
console.log(str.indexOf(g)) // 3
console.log(str.indexOf(b)) // -1
// indexOf() 在 字符串 和 数组 中都是适用的
5、lastIndexOf() ---- 返回字符串中某个字符 最后出现 的位置 该方法从字符串后面开始检索起 也就是从后面开始检索字符首次出现的位置 和 indexOf 相反
// 语法 stringObject.lastIndexOf(searchvalue,fromindex)
// searchvalue 为要检索的字符(必须参数)
// fromindex 定义从字符串哪个位置开始检索字符(被必须参数)
//若检测一个不存在的字符 则返回 -1
let str = 'dengZiYao dengZiYao';
console.log(str.lastIndexOf(g)) // 5
console.log(str.lastIndexOf(b)) // -1
// lastIndexOf() 在 字符串 和 数组 中都是适用的
6、concat() ---- 拼接字符串 / 组合字符串 在字符串末尾处追加字符串
let str = 'dengZiYao';
console.log(str.concat('ab') // dengZiYaoab
console.log(str.concat('ab','cd')) // dengZiYaoabcd
7、match() --- 在字符串内检索指定的值,找到一个或多个正则表达式的匹配的字符。匹配不到返回Null
// 语法
string.match(regexp) // regexp是一个正则表达式 不区分大小写 其返回值是一个数组Array
console.log(str2.match(/zi/g)); // ["zi", "zi", "zi", "zi"]
8、replace() --- 在字符串中用 某种字符去替换指定的字符 或者 用正则表达式去替换某些字符
// 语法
stringObject.replace(regexp/substr,replacement)
// regexp/substr 要在字符串中匹配的字符(必须参数)
// replacement 字符串要替换的值(必须参数)
let str = 'dengZiYao dengZiYao';
console.log(str.replace(/Yao/g, 'yao')) // dengZiyao dengZiyao
9、search() --- 用于检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串。无匹配返回-1
str.search(regexp/substr)
//返回值:str中第一个与正则或字符串相匹配的子串的起始位置。
10、slice() --- 创建副本 用于截取字符串指定位置的字符 接收两个参数 slice(start,end) 字符串开始位置的索引号 和 字符串结束位置的索引号
参数可以为正负数
let str = 'dengZiYao';
console.log(str) // dengZiYao
console.log(str.slice(3)) // ZiYao
console.log(str.slice(0,4)) // deng 数学中的表达式为: [0,4)
console.log(str.slice(-5)) // ZiYao 从后面开始截取起 不包括倒数第5个字符
console.log(str.slice(-4,-2)) // iY 数学中的表达式为:(-4,-2]
//也可以这么理解:两个参数都是负数,所以都加上字符串长度9转换成正数,因此相当于slice(5,7) // iY
11、split() --- 把字符串从某个字符位置分割成字符串数组
split(separator,limt) // 接收两个参数
// separator 字符串或正则表达式,从该参数指定的地方分割 string Object (非必需参数)
// limt 定义返回的数组的最大长度(非必需参数)
let str = 'deng-Zi-Yao';
console.log(str.split('-')) // ['dneg','zi','yao']
console.log(str.split()) // ['dnegziyao']
console.log(str.split('-',2)) // ['dneg','zi']
12、substr() --- 从字符串中抽取从 start 下标开始的指定数目的字符
13、substring() --- 用于提取字符串中介于两个指定下标之间的字符。
14、toUpperCase() / toLowerCase() 用于字符串转换大小写