前端相关函数
1.数组的fill()函数
用于将一个固定值替换数组的元素。
例:
var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.fill("Runoob");
输出:Runoob,Runoob,Runoob,Runoob
2.数组的map()函数
返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值。
按照原始数组元素顺序依次处理元素。
注意事项:map() 不会对空数组进行检测,不会改变原始数组。
例:
var arr = [3, 2, 1, 4, 6, 2, 7, 54, 83, 75];
console.log('新数组:', arr.map(x => x + 1), '\n','旧数组:', arr);
输出:
新数组: [ 4, 3, 2, 5, 7, 3, 8, 55, 84, 76 ]
旧数组: [ 3, 2, 1, 4, 6, 2, 7, 54, 83, 75 ]
size
size只能读不能改 ,类似于Array.length,不同的是size下标从1开始
set()
Map对象的set()方法,如果有相同key名的属性将会覆盖,如果key名没有重复就会添加;
使用set()方法可以给Map添加键值对。
get()
通过get()方法可以从Map中提取值
has()
用来检查某个数据项是否存在于Map中
delete()
使用delete方法可以从Map中删除一个数据项
clear()
使用clear方法可以删除Map中所有的数据项
3.数组的from()函数
可迭代的对象:
遍历器(Iterator)它是一种借口,为各种不同的数据结构提供统一的访问机制。 任何数据结构只要部署Iterator接口,就可以完成遍历操作(即依次处理该数据结构的所有成员)。Iterator接口主要提供for…of消费。
一个数据结构(数组、Map、Set,某些类似数组的对象——比如arguments对象,DOM NodeList对象,Generator对象,字符串等),才可以被for…of循环遍历。 换句话说就是for…of 循环内部调用的是数据结构Symbol.iterator方法
注:IE11 及其更早的浏览器版本不支持 from 方法。
from() 方法用于通过拥有 length 属性的对象或可迭代的对象转换成一个数组。
如果对象是数组返回 true,否则返回 false。
4.数组的展开语法,常用于数组、对象和字符串,[…]
可以在函数调用/数组构造时, 将数组表达式或者string在语法层面展开
还可以在构造字面量对象时, 将对象表达式按key-value的方式展开。
5.ES中的Set对象
可以通过new Set()创建Set对象,传参为一个可迭代对象
在set对象当中,如果有重复数据,会自动去重
Array.from()方法可以将类数组和可迭代对象转换成新的数组
console.log(Array.from(new Set(arr)));
Set的实例方法
add()
add方法能够向Set中添加数据项:如果数据存在的话,就会添加失败,如果不存在数据则添加成功
Set内部使用Object.is()方法来判断两个数据项是否相等,唯一不同的是+0和-0在Set中被判断为是相等的。
delete()
delete方法能够向Set中删除数据项并且返回boolear值,根据boolean的值确实是否删除成功。
has()
可以使用has()方法来判断某个值是否存在于Set中
size
size只能读不能改 ,类似于Array.length,不同的是size下标从1开始
clear()
清空Set对象全部数据
6.数组中的filter()函数
filter() 方法创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素。
filter() 不会对空数组进行检测。
filter() 不会改变原始数组。
7.数组去重
[...new Set(arr)]