一、学习内容:
展开运算符及对象数组方法
展开运算符
展开字符串:...str
展开字符串数组,[...arr]
浅拷贝:arr==...arr;返回值是false
展开对象:console.log({...obj });
合并对象: console.log({ ...obj, ...obj2 });
对象的key值是唯一的,所以合并如果有重复的,后面的会覆盖掉前面的值
伪数组(所有实参的集合):arguments
展开运算符可以显示实参的集合,从而计算实参的个数
[...arguments]是数组
剩余参数: function fn(a, b, ...rest) { }
function fn(...rest) { }
对象的方法
Object.assign()
参数为:
1.空的对象;
2.需要被合并的对象
key值是唯一的
Object.keys()
Object.values()
键值数组的集合,按照a~z的顺序排列
数组的方法
1.forEach(function(item,index){})--数组遍历,item元素值,index索引值
2.concat()---合并数组为一个数组
3.join()---拼接符,将数组转成字符串
4.unshift()
在原数组上添加
操作第一元素位置添加的数组元素
5.shift()
在原数组上删除
操作第一元素位置删除数组元素
6.pop()
在原数组上删除
操作最后一个元素位置删除数组元素
7.push()
在原数组上添加
操作最后一个元素位置添加数组元素
8.slice(startindex,endindex)
不影响原数组
截取数组元素,不包括结束索引值
9.splice(index,num,‘x’,‘y’,‘z’)
在原数组上替换
替换元素,(开始替换索引值,替换长度,要替换的值)
10.sort(function(a,b){
return a-b;从小到大
return b-a;从大大小})
在原数组上改变
有回调函数
11.reverse()
在原数组上改变
将数组元素颠倒
12.includes()---数组中是否包括该元素,返回值是true/false
13.map(function(item,index,a){})
有回调函数
遍历数组的元素、索引、整个数组
14.find(function(item){元素})
有回调函数
返回的是符合要求的第一个值
查找,返回符合要求的第一个元素,如果没有符合要求的值则返回undefined
15.findIndex(funciton(item){});
有回调函数
返回的是符合要求的第一个索引值
查找符合要求的第一个索引,没有符合要求的返回值是-1
16.indexOf()
如果传两个参数,第二个参数是索引值,输出的是该索引值之后符合第一个参数的索引值
指定元素的第一个对应元素所在的索引
17.flat();
默认值为1
参数Infinity是无限次拉平
拉平数组
18.every(function(item){})
指数组中的所有元素,返回值是布尔值,所有元素都要符合要求才返回true
19.some(funciton(item){});
返回值为布尔值,只要有一个符合要求就返回true
20.filter(function(){});
不会影响原数组
过滤器--返回值为数组,所有符合要求的元素放入新的数组中
|