持续创作,加速成长!这是我参与「编程 · 10 月更文挑战」的第2天,点击查看活动详情
字符串常用方法第二弹
在上一篇文章我们讲到了字符串的常用方法,这篇文章我们继续讲解字符串的常用方法。
这里我们将会讲解字符串获取指定位置以及字符串截取的方法。
同样由于字符串的不可改变性,所以这些方法都是返回一个新的字符串,并不会改变原来的字符串。
字符串获取指定位置的方法
charAt(index)
charAt
方法用于返回指定位置的字符,如果位置超出字符串长度则返回空字符串。
value= str.charAt(index);
方法里面的那个参数就是我们获取的位置,比如我们想获取字符串的第一个字符,那么我们就可以这样写
var str = "hello world";
var value = str.charAt(0);
console.log(value); // h
其实这个方法和str[index]
最终实现的效果是一样的。
如果我们传入的参数不在字符串的范围内[0,str.length),那么就会返回空字符串。
var str = "hello world";
var value = str.charAt(100);
console.log(value); // ""
str.[index]
value = str[index];
这个方法的使用和str.charAt(index)
是一样的,在这里我们就不过多讲述。
charCodeAt(index)
charCodeAt
方法用于返回指定位置的字符的 Unicode 编码,如果位置超出字符串长度则返回 NaN。
value = str.charCodeAt(index);
通过这个方法,我们可以获取到字符串中某个位置的字符的 Unicode 编码。
var str = "hello world";
var value = str.charCodeAt(0);
console.log(value); // 104
字符串截取
slice(start, end)
在有关字符串截取的方法中,slice
方法是最常用的方法,它的作用是返回一个新的字符串,包含从 start 到 end(不包括该元素)的字符串。[start, end)
value = str.slice(start, end);
此方法从字符串中截取指定位置的内容。传入参数分为一下几种情况:
- 传入一个参数
正数
,那么就是从这个位置正数
开始截取到字符串的末尾。 - 传入一个参数
负数
,那么就是从字符串的末尾开始截取到这个位置负数
。 - 传入两个参数
正数1,正数2
,那么就是从开始位置正数1
开始截取到结束位置正数2
。 - 传入两个参数
负数1,负数2
,那么就是从开始位置负数1
开始截取到结束位置负数2
。 - 传入两个参数
正数1,负数2
,那么就是从开始位置正数1
开始截取到结束位置负数2
。 - 传入两个参数
位置1,位置2
(位置1大于位置2),那么最后返回的结果为空。
substring(start, end)
substring
方法的作用和slice
方法是一样的,不同之处有:
-
substring()
的参数不能为负数,如果为负数,那么就会自动转换为 0。 -
substring()
的参数如果位置1大于位置2,那么就会自动调换位置。返回值不会像slice
方法那样返回空字符串。value = str.substring(start, end);
substr(start, length)
这个方法现在还没有标准化,所以不建议使用它。
substr
方法的作用是返回一个新的字符串,包含从 start 到 start + length 的字符串。[start, start + length)
value = str.substr(start, length);
里面的参数有以下几种情况:
- 传入两个参数
正数1,正数2
,那么就是从开始位置正数1
开始截取到结束位置正数1 + 正数2
。 - 传入一个参数
正数
,从指定位置正数
开始,截取到最后。 - 传入一个参数
负数
,从倒数第|负数|
个位置开始截取到最后。
其他一些常见方法
String.formCharCode()
通过Unicode编码获取字符
此方法是根据字符的Unicode编码获取字符。
value = String.formCharCode(unicode);
方法里面的参数就是Unicode编码。
栗子:
var str = String.fromCharCode(72);
console.log(str); // H
concat()
连接字符串
此方法用于连接一个或者多个字符串。
value = str.concat(str1, str2, str3...);
方法里面的参数可以是一个或者多个字符串。但是我们可以有更简单的办法,就是使用+
来实现。
所以这个方法我们基本不使用。
split()
字符串转换为数组【重要】
这个方法十分重要,在我们日常的开发中,经常会将字符串转换为数组。这个方法就变得尤为重要。
value = str.split('分隔符');
此方法中的参数,就是我们分隔字符串的依据,例如:一个字符串里面有多个逗号,我们恰好需要将这个字符串转换为数组,那么我们就可以使用逗号来分隔字符串。
var longStr = '1,2,3,4,5,6';// 字符串
var arr = str.split(',');
console.log(arr); // [1, 2, 3, 4, 5, 6]
replace()
替换字符串
此方法用于替换字符串中的内容。
value = str.replace('要替换的内容', '替换后的内容');
此方法中的参数,第一个参数是要替换的内容,第二个参数是替换后的内容。
var str1 = 'today is fine day!fine day!';
var str2 = str1.replace('fine', 'good');
console.log(str1); // today is fine day!fine day!
console.log(str2); // today is good day!fine day!
通过这段代码,我们知道替换效果不会改变原有的字符串,其次只会替换第一个匹配的内容。如要替换全部内容,就需要使用到正则表达式。
repeat()
重复字符串
此方法用于重复字符串。
value = str.repeat(count);
此方法中的参数,就是重复的次数。
var str = 'hello';
var str1 = str.repeat(3);
console.log(str1); // hellohellohello
trim()
去除字符串两端的空格
此方法用于去除字符串两端的空格。
value = str.trim();
栗子:
var str = ' hello world ';
var str1 = str.trim();
console.log(str1); // hello world
toLocaleLowerCase()
&toLocalUpperCase()
转换大小写
此方法用于转换字符串的大小写。
value = str.toLocaleLowerCase();
value = str.toLocaleUpperCase();
此方法是将字符串全部改为大写或者小写。
栗子:
var str = 'Hello World';
var str1 = str.toLocaleLowerCase();
var str2 = str.toLocaleUpperCase();
console.log(str1); // hello world
console.log(str2); // HELLO WORLD
本网站是一个以CSS、JavaScript、Vue、HTML为核心的前端开发技术网站。我们致力于为广大前端开发者提供专业、全面、实用的前端开发知识和技术支持。
在本网站中,您可以学习到最新的前端开发技术,了解前端开发的最新趋势和最佳实践。我们提供丰富的教程和案例,让您可以快速掌握前端开发的核心技术和流程。
本网站还提供一系列实用的工具和插件,帮助您更加高效地进行前端开发工作。我们提供的工具和插件都经过精心设计和优化,可以帮助您节省时间和精力,提升开发效率。
除此之外,本网站还拥有一个活跃的社区,您可以在社区中与其他前端开发者交流技术、分享经验、解决问题。我们相信,社区的力量可以帮助您更好地成长和进步。
在本网站中,您可以找到您需要的一切前端开发资源,让您成为一名更加优秀的前端开发者。欢迎您加入我们的大家庭,一起探索前端开发的无限可能!
代办报建
本公司承接江浙沪报建代办施工许可证。
联系人:张经理,18321657689(微信同号)。
11条评论
楼主是一个典型的文艺青年啊!http://htfl.cqyiyou.net/test/004971428.html
楼主是在找骂么?http://7tv4s.qoqzd.com
看了这么多帖子,第一次看到这么高质量内容!http://z0cb.ybndd.com
楼主写的很经典!http://3je5.chnphoto.net.cn
看帖不回帖的人就是耍流氓,我回复了!http://xhav7.9twh.com
管它三七二十一!http://l8j2co.9991034.com
对牛弹琴的人越来越多了!http://lde.ycsy11.com
听楼主一席话,省我十本书!http://jts.m45b.com
楼主很有经验啊!http://4656ty.lantianch.com
强,我和我的小伙伴们都惊呆了!http://7mtc.91c3.com
有品位!https://www.telegramxp.com/
发表评论