人生就是在不断的学习,才能生存。
--字符串新增方法。
ES5
indexOf() --返回某个指定的字符串值在字符串中首次出现的位置未找到则返回-1。
ES6
includes() --是否找到参数字符串
startsWith(String , n) --是否找到参数在原字符串的头部
endsWith(String , n) --是否找到参数在原字符串的尾部
startsWith和endsWith,使用第二个参数时,会规定前n个字符,n从1开始。
String.repeat(n) --将原字符串重复n次,并返回。
(有点像css的平铺,n为小数时,取整数部分,n为负数或Infinity会报错,n为NaN,等同为0,n为字符串,则会先转换成数字。)
ES7
字符串补全长度
padStart(n , String) --头部补全
padEnd(n , String) --尾部补全
** 原字符串的长度,等于或大于最大长度,则字符串补全不生效,返回原字符串。
** 如果用来补全的字符串与原字符串,两者的长度之和超过了最大长度,则会截去超出位数的补全字符串。
** 如果省略第二个参数,默认使用空格补全长度。
--可用来提示字符串格式
消除空格
ES5
trim() --消除空格
ES9
trimStart() --只消除头部的空格 ( 别名:trimLeft() )
trimEnd() --只消除尾部的空格 ( 别名:trimRight() )
除了空格键,这两个方法对字符串头部(或尾部)的 tab 键、换行符等不可见的空白符号也有效。
正则表达式
matchAll() --返回一个正则表达式在当前字符串的所有匹配
--正则表达式扩展
RegExp
var regex = new RegExp("String" , 修饰符) || new RegExp(正则表示式)
返回: regex = String/修饰符 || regex = 正则表示式
ES5
不允许第一个参数为正则表达式时,还有第二个参数为修饰符。
ES6
第一个参数为正则表达式时,第二个参数为修饰符则会替代旧的修饰符。
添加了u修饰符,含义为“Unicode 模式”,用来正确处理大于\uFFFF的 Unicode 字符。
也就是说,会正确处理四个字节的 UTF-16 编码。
添加了y修饰符,叫做“粘连”(sticky)修饰符。
y修饰符确保匹配必须从剩余的第一个位置开始,这也就是“粘连”的涵义。
g修饰符只要剩余位置中存在匹配就可,而y修饰符确保匹配必须从剩余的第一个位置开始
--数值的扩展
Number方法
isFinite() isNaN()
isFinite() 用来检查一个数值是否为有限的(finite),即不是Infinity。
isNaN() 用来检查一个值是否为NaN。即不是数值
isInteger() 用来判断一个数值是否为整数。
全局方法parseInt()和parseFloat(),移植到Number对象上面,行为完全保持不变。
Math的扩展
Math.trunc(num) --除一个数的小数部分,返回整数部分。
Math.sign(num) --整数返回 1,负数返回 -1,为0返回 0,为-0返回 -0,其他值返回 NaN。
Math.cbrt(num) --计算一个数的立方根
Math.hypot(num) --返回所有参数的平方和的平方根,如果参数不是数值,Math.hypot方法会将其转为数值。只要有一个参数无法转为数值,就会返回 NaN。
--函数的扩展
ES5
--
ES6