ES6新增方法
includes()
格式:arr.includes(查找值,开始检索的位置)
//找到相应值返回true,否则返回false
'abc'.includes('a')
padStart()和padEnd()
格式:str.padStart(字符串总位数,添加相应字符串)/padEnd(字符串总位数,添加字符串)
//从前开始补全字符串
'x'.padStart(5,'ab') //ababx
//从后开始补全字符串
'x'.padEnd(5,'ab') //xabab
注意:
- 原字符串的长度等于或大于最大长度,不会消减原字符串,字符串补全不生效,返回原字符串;
- 用来补全的字符串与原字符串长度之和超过了最大长度,截去超出位数的补全字符串,原字符串不动;
- 如果省略第二个参数,默认使用空格补全长度
trimStart()/trimLeft()与trimEnd()/trimRight()
格式:str. trimStart()
//去除左边的空格,中间不去除
' x y'.padStart()/trimLeft() //x y
//去除右边的空格,中间不去除
'x '.padEnd()/trimRight() //x
Array.from()
格式:Array.from(数据,数据操作,this指向)
//将其他数据类型转换成数组
console.log(Array.from('hello')); //['h','e','l','l','o']
//拥有length属性的任意对象
//键名只能是索引
const obj = {
'0': 'xxx',
'1': 18,
length: 2
}
console.log(Array.from(obj))
console.log(Array.from('12', (value)=>value*2) //[2,4]
find()
格式:arr.find(function(value, index, arr){},this指向)
//找到符合条件的一个值立刻返回
[1,2,3,4].find((value)=>value>2)
findIndex()
格式:arr.findIndex(function(value, index, arr){},this指向)
//找到符合条件的一个值,将这个值的索引返回
[1,2,3,4].findIndex((value)=>value>2)
Object.assign()
格式:Object.assign(obj1, obj2)
//合并对象,直接合并到第一个参数中,返回合并后的对象
const obj1 = {
name: 'xxx',
age: 18
}
const obj2 = {
name: 'yyy',
age: 18,
sex: 'male'
}
Object.assign(obj1, obj2); //{name:'yyy', age: 18, sex: 'male'}
Object.keys()、Object.values()与Object.entries()
const obj = {
username: 'yyy',
age: 18,
sex: 'female'
}
console.log(Object.keys(obj2)); //['username', 'age', 'sex']
Object三个方法与数组三个方法的区别:数组的keys、values、entries是实例方法,返回的都是iterator;对象的keys、values、entries是构造函数方法,返回的是数组