字符串str的方法

所有字符串方法都会返回新字符串。它们不会修改原始字符串。(字符串不可变性,可以重新赋值)

length,
indexOf,lastIndexOf,search,
slice,substring,substr,
replace
toUpperCase,toLowerCase,
字符串拆、合:concat,split,
trim,
charAt,charCodeAt,

length

let str= 'abcdefg';
console.log(str.length); // 7

indexOf()

返回字符串中指定文本首次出现的索引(位置)。
第二个参数:开始搜索的位置。
没有找到,返回-1。

let str= 'abcdefg';
console.log(str.indexOf('cd')); // 2


let str= 'abcdefgabcdefg';
console.log(str.indexOf('cd',4)); // 9

lastIndexOf()

返回指定文本在字符串中最后一次出现的索引

let str= 'abcdefgabcdefg';
console.log(str.lastIndexOf('cd')); // 9

search()

搜索特定值的字符串,并返回匹配的位置:

let str= 'abcdefgabcdefg';
console.log(str.search('cd')); // 2

search和indexOf两种方法是不相等的。区别在于:

  • search() 方法无法设置第二个开始位置参数。
  • indexOf() 方法无法设置更强大的搜索值(正则表达式)。

slice()

提取字符串的某个部分并在新字符串中返回被提取的部分。
该方法设置两个参数:起始索引(开始位置),终止索引(结束位置)。
如果某个参数为负,则从字符串的结尾开始计数。
如果省略第二个参数,则该方法将裁剪字符串的剩余部分。

let str= 'abcdefgabcdefg';
console.log(str.slice(1,3)); // bc

let str= 'abcdefg';
console.log(str.slice(2,-3)); // cd

let str= 'abcdefg';
console.log(str.slice(-6,-3)); // bcd

let str= 'abcdefg';
console.log(str.slice(-12)); // abcdefg

let str= 'abcdefg';
console.log(str.slice(2)); // cdefg

substring()

substring() 类似于 slice()。不同之处在于 substring() 无法接受负的索引。

substr()

substr() 类似于 slice()。不同之处在于第二个参数规定被提取部分的长度。
如果首个参数为负,则从字符串的结尾计算位置。

let str= 'abcdefg';
console.log(str.substr(2,4)); // cdef

let str= 'abcdefg';
console.log(str.substr(-5,4)); // cdef

replace()

默认地,replace() 只替换首个匹配。
默认地,replace() 对大小写敏感。
如需执行大小写不敏感的替换,请使用正则表达式 /i(大小写不敏感)
如需替换所有匹配,请使用正则表达式的 g 标志(用于全局搜索)

let str= 'abcdefgb';
console.log(str.replace('b','bbb')); // abbbcdefgb

let str= 'aBcdefgB';
console.log(str.replace('b','bbb')); // aBcdefgB

let str= 'aBcdefgB';
console.log(str.replace(/b/i,'bbb')); // abbbcdefgB

let str= 'aBcdefgB';
console.log(str.replace(/b/ig,'bbb')); // abbbcdefgbbb

toUpperCase() 和 toLowerCase()

let str= 'Hello World!';
console.log(str.toUpperCase()); // HELLO WORLD!


concat

连接两个或多个字符串:

let str1= 'Hello';
let str2= ' World!';
console.log(str1.concat(str2)); // Hello World!

let str1= 'Hello';
let str2= ' World!';
console.log(str1.concat(str2,'aa','bb')); // Hello World!aabb

trim()

删除字符串两端的空白符.

let str= '      Hello World!        ';
console.log(str.trim()); // Hello World!

charAt()

返回字符串中指定下标(位置)的字符串

let str= 'HELLO WORLD';
console.log(str.charAt(1)); // E

charCodeAt()

返回字符串中指定索引的字符 unicode 编码

let str= 'HELLO WORLD';
console.log(str.charCodeAt(1)); // 69

split()

字符串转换为数组

let str= 'HELLO WORLD';
console.log(str.split()); // ["HELLO WORLD"]

let str= 'HELLO WORLD';
console.log(str.split('')); // ["H", "E", "L", "L", "O", " ", "W", "O", "R", "L", "D"]

let str= 'a,b,c,d,e';
console.log(str.split(',')); //  ["a", "b", "c", "d", "e"]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值