JS语言——针对数组进行的一些总结

JS语言——针对数组进行的一些总结

一、增

push():向数组的末尾添加一个或更多元素,并返回新的长度。
在这里插入图片描述

unshift():向数组的开头添加a元素,并返回添加后的数组长度
在这里插入图片描述

concat():连接两个或更多的数组,并返回结果。
在这里插入图片描述
splice(idx,0, v1,v2….): 从数组的idx下标开始添加v1,v2个元素。 splice()功能十分强大,可以通过改变输入的参数来实现对数组的增、删和替换。原理就是在规定的起始位置a,删除b个,如果后面需要塞进去新元素就加到cd…的位置,如果不加就是删除了,splice实质上是通过删除元素来实现插入、删除、替换的
在这里插入图片描述

二、删

pop() 删除最后一个元素,返回值就是这一个元素;与push()方法配合使用可以构成后进先出的栈
在这里插入图片描述

shift(): 删除第一个元素,返回值就是这一个元素;与push()方法配合使用可以构成先进先出的队列
在这里插入图片描述

splice(idx,n):从idx位置截取n个元素
在这里插入图片描述

④.slice(n,m):类似于concat()一样是返回一个新数组,表示取数组n到m下标的元素组成一个新数组,不会对原数组有修改,
slice(n); 表示从数组n下标开始已知取到数组结束, 不会对原数组有修改,

在这里插入图片描述

三、改

toString():将数组改为字符串,返回值是得到的字符串,不会对原数组进行修改。
在这里插入图片描述

sort():将数组按照第一个字节数排序
在这里插入图片描述

sort((a,b)=>{return a-b}):升序排序
在这里插入图片描述

reverse() :颠倒数组中元素的顺序
在这里插入图片描述

四、查

indexOf(value):从数组0下标开始查找value,返回值是value的下标
在这里插入图片描述
lastIndexOf()::从数组末尾下标开始查找value,返回值是value的下标;
在这里插入图片描述

forEach():遍历整个数组,不中断,可以传入三个值,分别是(当前元素,索引index,原数组)
在这里插入图片描述

map() :map() 方法来根据需求格式化原数组,返回格式化后的数组。原数组不变;可以传入三个值,分别是(当前元素,索引index,原数组)
在这里插入图片描述

map()和forEach()的区别:
相同点:

1、都是只能遍历数组
2、都有三个返回值(当前元素,索引index,原数组)
3、都是循环遍历数组每一项
区别是:

1、map,有返回值,可以return出来
2、forEach,没有返回值。forEach()返回值是undefined,不可以链式调用。
3、没有办法终止或者跳出forEach()循环,除非抛出异常,所以想执行一个数组是否满足什么条件,返回布尔值,可以用一般的for循环实现,或者用Array.every()或者Array.some();
filter():返回数组中满足条件的元素组成的新数组,原数组不变(筛选,过滤)
在这里插入图片描述

every() :当数组每一项都满足条件时,返回true,,否则flase,

在这里插入图片描述
some():当数组有一项满足条件时,返回true,
在这里插入图片描述

五、数组和字符串的互换

join()将数组中所有元素放到一个字符串中,并用指定的分隔符进行分割
在这里插入图片描述
split()
:将字符串以指定的分隔符分割成数组
在这里插入图片描述

六、遍历数组

forEach() 遍历普通数组

在这里插入图片描述

map() 方法
map即是 “映射”的意思 ,原数组被“映射”成对应新数组
在这里插入图片描述
③ 扩展运算符 … :只有函数调用时,将一个数组转为用逗号分隔的参数序列。

在这里插入图片描述
.filter() 过滤循环
filter 方法用于过滤数组成员,满足条件的成员组成一个新数组返回。它的参数是一个函数,所有数组成员依次执行该函数,返回结果为true的成员组成一个新数组返回。该方法不会改变原数组。
在这里插入图片描述
filter() 方法的参数函数也可以接受三个参数:当前成员,当前位置和整个数组。
在这里插入图片描述
some(),every() 循环遍历,统计数组是否满足某个条件
它们接受一个函数作为参数 ,所有数组成员依次执行该函数。
该函数接受三个参数:当前成员、当前位置和整个数组,然后返回一个布尔值。

some() 方法是只要一个成员的返回值是true,则整个some方法的返回值就是true,否则返回false。即有真则真

在这里插入图片描述
every() 方法则相反,所有成员的返回值都是true,整个every方法才返回true,否则返回false即有假则假
在这里插入图片描述
reduce()reduceRight() 方法可依次处理数组的每个成员,最终累计为一个值
reduce():从左到右处理(从第一个成员到最后一个成员)
reduceRight():从右到左处理(从第一个成员到最后一个成员)
第一个参数为一个函数,而这个函数接受4个参数分别是:
1、累积变量,默认为数组的第一个成员
2、当前变量,默认为数组的第二个成员
3、当前位置(从0开始)
4、原数组
第二个参数为累加的初值
在这里插入图片描述

应用:找出字符长度最长的数组成员。
在这里插入图片描述

Object,keys()Object.getOwnPropertyNames()

Object.keys方法的参数是一个对象,返回一个数组。该数组的成员都是该对象自身的(而不是继承的)所有属性名,且只返回可枚举的属性。而Object.getOwnPropertyNames() 能返回不可枚举的属性,如length

在这里插入图片描述

这是目前能用到的一些JS对于数组的一些功能函数,如有大佬补充可以使劲评论!~~2020年7月28日1时11分

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值