ES6为字符串扩展了几个新的API:
-
includes()
:返回布尔值,表示是否找到了参数字符串。 -
startsWith()
:返回布尔值,表示参数字符串是否在原字符串的头部。 -
endsWith()
:返回布尔值,表示参数字符串是否在原字符串的尾部。
map()
:接收一个函数,将原数组中的所有元素用这个函数处理后放入新数组返回。
```js
let arr = ['1','20','-5','3'];
console.log(arr)
arr = arr.map(s => parseInt(s));
console.log(arr)
```
作用累加
reduce()
:接收一个函数(必须)和一个初始值(可选),该函数接收两个参数:
-
第一个参数是上一次reduce处理的结果
-
第二个参数是数组中要处理的下一个元素
reduce()
会从左到右依次把数组中的元素用reduce处理,并把处理的结果作为下次reduce的第一个参数。如果是第一次,会把前两个元素作为计算参数,或者把用户指定的初始值作为起始参数
举例:
const arr = [1,20,-5,3]
----------------------------------------------
对象扩展
-
keys(obj):获取对象的所有key形成的数组
-
values(obj):获取对象的所有value形成的数组
-
entries(obj):获取对象的所有key和value形成的二维数组。格式:
[[k1,v1],[k2,v2],...]
-
assian(dest, ...src) :将多个src对象的值 拷贝到 dest中(浅拷贝)。
操作对象
原对象:per={name:"jsck",age:20,sex:1}
将keys组成一个数组
Object.keys(per);
将value组成一个数组
Object.values(per)
将key和value组成二维数组
Object.entries(per)
[[key,value],[],[]]
assign(dest,...src):将多个src对象的值拷贝到dest中(浅拷贝)
------------------------------------------------------------------
数组扩展
ES6给数组新增了许多方法:
-
find(callback):把数组中的元素逐个传递给函数callback执行,如果返回true,则返回该元素
- person.find(p=>p.age == 21)
-
findIndex(callback):与find类似,不过返回的是品牌到的元素的索引
-
includes(callback):与find类似,如果匹配到元素,则返回true,代表找到了。