JavaScript中字符串的常用方法

1 charAt() 方法

charAt() 方法可以得到指定位置的字符。

字符串中的每个字符都按顺序编号,编号从 0 开始。

'JS,NODE'
012345678910111213

'我喜欢JS,我也喜欢NODE'.charAt(0);     // "我"
'我喜欢JS,我也喜欢NODE'.charAt(5);     // ","
'我喜欢JS,我也喜欢NODE'.charAt(11);    // "O"
'我喜欢JS,我也喜欢NODE'.charAt(99);    // ""
'我喜欢JS,我也喜欢NODE'.charAt(-1);    // ""

超出范围的输出空字符 ""

2 substring()、substr() 和 slice() 方法

(1)substring(a, b) 方法得到从 a 开始到 b 结束(不包括 b 处)的子串 [a, b)

编程语言的区间一般都是:左闭右开!

'我喜欢JS,我也喜欢NODE'.substring(3, 5);       // "JS"
'我喜欢JS,我也喜欢NODE'.substring(10, 14);     // "NODE"
'我喜欢JS,我也喜欢NODE'.substring(10, 99);     // "NODE"
'我喜欢JS,我也喜欢NODE'.substring(-1, 4);      // "我喜欢J"

超出范围的部分,取到端点字符!

  • substring(a, b) 方法如果省略第二个参数,返回的子串会一直到字符串的结尾

'我喜欢JS,我也喜欢NODE'.substring(6);      // "我也喜欢NODE"

  • substring(a, b) 中,a 可以大于 b,数字顺序将自动调整为小数在前

应该没有人会这样用^^

'我喜欢JS,我也喜欢NODE'.substring(3, 5);       // "JS"
'我喜欢JS,我也喜欢NODE'.substring(5, 3);       // "JS"

(2)substr(a, b) 中,将得到从 a 开始的长度为 b 的子串

'我喜欢JS,我也喜欢NODE'.substr(3, 2);      // "JS"

  • substr(a, b) 中,b 可以省略,表示到字符串结尾

'我喜欢JS,我也喜欢NODE'.substr(3);     // "JS,我也喜欢NODE"

  • substr(a, b) 中,a 可以是负数,表示倒数位置

倒数第一位为 -1,而不是 -0

'我喜欢JS,我也喜欢NODE'.substr(-4, 2);     // "NO"

(3)slice(a, b) 方法得到从 a 开始到 b 结束(不包括 b 处)的子串

slice:切片

'我喜欢JS,我也喜欢NODE'.slice(3, 5);       // "JS"

  • slice(a, b) 的参数 a 可以是负数(与 substring(a, b) 的区别)

'我喜欢JS,我也喜欢NODE'.slice(-4, -1);     // "NOD"
// (-4, -1):从 倒数第4位 到 倒数第1位,不包括 倒数第1位

  • slice(a, b) 中,参数 a 必须小于参数 b,否则便会返回一个空字符串

3 toUpperCase() 和 toLowerCase() 方法

  • toUpperCase() 转为大写

  • toLowerCase() 转为小写

'I Love You'.toUpperCase();     // "I LOVE YOU"
'IMooc'.toLowerCase();          // "imooc"

注意:toUpperCase() 和 toLowerCase(),只是返回一个大小写格式,变量本身的值并没有改变。

var str = "I Love You";
console.log(str.toUpperCase());        // "I LOVE YOU"
console.log(str);                    // "I Love You"
str = str.toUpperCase();
console.log(str);                    // "I LOVE YOU"

4 indexOf() 方法

indexOf() 方法返回某个指定的字符串值在字符串中首次出现的位置

如果要检索的字符串没有出现,则返回 -1

这个方法用于判断字符串是否包含目标子串时特别有用!

'abcdebb'.indexOf('b');        // 1
'abcdebb'.indexOf('deb');    // 3
'abcdebb'.indexOf('m');        // -1

5 trim()、trimStart()、trimEnd() 方法

// 删除首尾空格
console.log('---' + ' 123 '.trim() + '---');
// 删除首部空格
console.log('---' + ' 123 '.trimStart() + '---');
// 删除尾部空格
console.log('---' + ' 123 '.trimEnd() + '---');

/*
---123---
---123 ---
--- 123---
*/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值