这里先总结一下RegExp类型的两个主要方法:
(1)exec():主要用于捕获组。接受一个参数,这个参数是主要应用模式的字符串,然后返回包含第一个匹配项信息的数组。
(2)test():主要用于目标字符串和某个模式是否匹配,它接受一个字符串参数,在该模式和该参数匹配的情况下返回true。
call和apply,bind
每个函数都包含两个非继承而来的方法:apply和call。
这两个方法的用途时在特定的作用域中调用函数,实际上就是设置函数体内的this对象的值。
apply方法,接受两个参数:一是在其中运行函数的作用域,另一个是参数数组。
call和apply的区别在于接受参数的方式不同,call方法传递的参数必须组逐个列举出来。实际上,他们的真正用处在于扩充函数赖以运行的作用域。
bind:这个方法会创建一个函数的实例,其this的值会被绑定到传给bind函数的值。
String类型
1.字符方法:charAt(),charcodeAt()。
这两个方法都接受一个基于0的字符位置,前者返回的是单个字符,后者返回的是字符编码。
2.字符串操作方法:
slice():
substr():
substring():
这三个方法都是返回被操作字符串的一个子字符串,而且只接受一个或者两个参数。
第一个参数指定子字符串的开始位置,第二个参数表示字符串到哪里结束。
具体来说:
(1)slice和substring第二个参数接受的是子字符串最后一个字符后面的位置。
(2)substr的第二个参数指的是返回子字符串的个数。
当这三个方法的参数是一个负数的时候:
(1)slice的两个参数都会将这个负数和其字符串的长度相加。
(2)substring会将所有负数参数都转换为0,而且之后会再对转换之后的两个参数根据大小再进行换位。
(3)substr将负的第一个参数加上字符串的长度,而将负的第二个参数转换为0.之后不会进行参数换位。
在传递参数的个数和类型不同的情况下,三个方法的区别。
3.字符串位置方法
indexOf(),lastIndexOf(),这两个方法类似于数组的位置方法。
4.trim()
5.大小写转换
6.模式匹配
match()和search()。
7.replace():
这个方法接受两个参数:第一个参数是一个RegExp对象或者是一个字符串,第二个参数可以是一个字符串或者是一个函数。
注意第二个参数是一个函数的时候。
这里只是简单总结一个js高程上的一些主要的方法,如果后来面试复习来看的时候,再来进行补充。