String类型的一些总结

199 阅读3分钟

1. 背景:

    js中字符串属于一种类型,非常重要,字符串的用途很广,同时包含正则的处理、 一些自身提供的一些内置处理方法,是一个知识点复杂零碎的东西,这里我们来认识一下。

2.研究思路

    研究一个函数或者方法的五个不可少的点需要考虑,这个函数主要是干什么的? 返回值是什么,属于什么类型?参数是什么,有哪些情况可以思考?内部是怎么实现的? 有哪些应用场景?

1. 内置属性

length 字符串长度; prototype 字符串原型指针;

2. 内置的方法

startsWith 返回值Boolean类型,两个参数,第一个是要查询的子字符串,第二个是查询的位置,默认是0;

endsEnd 返回值Boolean类型,两个参数,第一个是要查询的子字符串,第二个是查询的位置,默认是str.length;

indexOf 返回值Number类型,两个参数,第一个是要查询的子字符串,第二个是查询的位置,默认是0; lastIndexOf 返回值Number类型,两个参数,第一个是要查询的子字符串,第二个是查询的位置,默认是str.length;

includes 返回值Boolean类型,两个参数,第一个是要查询的子字符串,第二个是查询的位置,默认是0;

padStart 返回值是填充后的新字符串,两个参数,第一个参数是要填充后的字符串长度,第二个参数是需要填充的内容; padEnd 返回值是填充后的新字符串,两个参数,第一个参数是要填充后的字符串长度,第二个参数是需要填充的内容;

slice 返回值是截取后的子串,两个参数,第一个参数是开始的起点,第二个参数是结束点; substr 返回值是截取后的子串,两个参数,第一个是开始的起点,第二个是截取的长度; substring 返回值是截取后的子串,两个参数,第一个参数是开始的起点,第二个参数是结束点;

注意:上述的slice、substring二者截取后都不包括结束的末尾字符。只传一个参数,默认截取到末尾; 区别是二者对于参数的解析不同substring是取二者之间的最小值为起点,如果是负数默认是0;slice参 数固定,并且如果是负数,者默认是字符串长度和参数的和最为截取的位置;

split 返回值是分割后的数组Array; 两个参数,第一个参数是分割点字符串,第二个参数是分割数;

toUpperCase 返回值是字符串的全部大写,无参数; toLowerCase 返回值是字符串的小写,无参数;

trim 返回值是过滤后的字符串,参数无; trimLeft 返回值是过滤后的字符串,参数无; trimRight 返回值是过滤后的字符串,参数无;

注意:从上数名称可以看出trim是过滤字符串两边的所有空白字符,trimLeft是从左边过滤,trimRight 是从右边过滤。

repeat 返回值是重复后的字符串,参数只有一个,是重复的次数; charAt 返回值是指定索引的字符,参数只有一个,是指定的索引; concat 返回值是连接后的新字符串,参数可以多个,是要连接的字符串; 注意:concat参数可以传入字符串,可以传入数组等都是可以的,返回一个新字符串,对原字符串无影响;

以下是正则表达式方法 search, match, replace

3.总结

    以上是js中字符串类型常用的原型链方法,是操作字符串的工具,每个内置方法都是引擎自己实现的,对于其实现的 思想有些比较简单,有些mdn上提供的有,可以参考,用来加深对js的理解,提高编程的能力。