数组的一些方法

数组的一些方法

数组:是一组数据的集合,数组可以包含任何数据类型
            数组的格式  arr=[]
            数组的属性 : 数组的长度  arr.length
            获取数组的某个值:  arr[下标]    下标:从0开始
 
            修改数组的某个值:arr[0]=新值
push()   // 往数组最后插入数据 并且可以返回数组的长度
unshift()  // // 往数组最前面插入数据  并且可以返回数组的长度
a.pop()   删除最后一项 并且返回所删除的值
a.shift()    删除第一项 并且返回所删除的值
创建方式 两种   1) 字面量方式  []
                   2) 创建对象方式  new Array()
 
         			当只有一个值的时候  在new Array() 代表设 置的是数组的长度
数组的属性  arr.length
 
数组的方法  arr.push()    arr.unshift()    插入 返回 数组的长度
             arr.pop()   arr.shift()      删除   返回  删除的值
splice(值1,值2,值3)可以实现添加 删除 替换
concat()合并数组   对原数组没有影响
reverse()倒序 会将原数组倒叙
sort() 排序 默认不传参时,按照ascii/按照位数排序
Join() 合并 将数组内容进行拼接:
	 1)快速将数组转为字符串
     2)将数组内容进行拼接
     3)判断一个数组是否是空字符串数组
     4)将数组转换为页面内容
forEach()循环 参数值函数格式 函数的参数 第一个是数组的每一项 第二个参数是数组的下标
第三个参数是数组本身
indexOf()检测某个数据在数组中是否含有,如果有返回下标,如果没有返回-1,第二个参数是指定从哪个位置开始检测,如果没有第二个参数,则默认从0开始
slice()截取子数组,(有两个参数)第一个参数是开始位置  第二个参数是结束位置(可选)(取不到结束位置的值)返回值是新数组;
Array.of()将一组值作为元素形成数组   参数值可以为不同类型  参数为空时返回空数组

Array.from()将类数组对象或可迭代对象转化为数组 参数为数组返回与原数组一样的数组  参数含空位  返回值空位是undefined

map函数,可以把数组里面的每个值挨个传入到回调函数中配合retrun把新数组返回出去放到一个数组中

fill()方法用于将一个固定值替换数组的元素   
var a = Array.fill()  没有参数全替换成undefined
var a = Array.fill(1)  一个参数全替换成指定的字符串
var a = Array.fill(1,2) 参数1 用什么字符去替换  参数2 从哪开始换
var a = Array.fill(1,23)  参数1 用什么字符去替换  参数2 从哪开始换  参数3 结束位置不包含结束位置  如果不提供第三个参数会一直替换到末尾

...扩展运算符
把数组转换成用逗号分割的参数列表
function demo(x,y,z){
	console.log(x+y+z);
}
demo(10,20,30); //60

let alist = [1,2,3];
demo(alist); //1,2,3undefinedundefined
demo(...alist); //60

复制数组
let a = [10,20,30];
let b = a;
b[1] = '60';
console.log(a);  //[10,'60',30]   //发现a数组也改变了

let a = [10,20,30];
let b = [...a];
b[1] = '60';
console.log(a);  //[10,20,30]   //发现a数组没有变化

合并数组
let a =[1,2,3];
let b =[4,5,6];
let c = [7,8,9];
let newA = a.concat(b,c) //以前合并数组的用法

//新写法
let newB = [...a,...b,...c];
find 返回数组中第一个满足条件的元素
findIndex()获取数组中满足条件元素的索引
entries()获取数组的key和value  配合for of 会比较方便 返回的是键值对
var  b = arr.entries()
console.log(b) 返回的是一个迭代器的数组
需要调用next()来向后移动指针
console.log(b.next()) 返回值是对象 {value:" ",done:" "}value存放的是对应下标里面的键值对
done里面存放的是布尔值,当数组里面还有数据没有遍历完之前里面存放的是false没数
据的时候存放的是true 
 includes()表示数组中是否包含某个指定的值 返回boolean
 
//ES5新增数组方法
forEach()数组遍历
var arr = [1,2,3,4,5]
arr.forEach(function(item,idex,arr){
/*item当前遍历到的元素
   index当前遍历到元素的下标
   arr数组本身
*/
})
filter()过滤
var arr = [1,2,3,4,5]
var newArr = arr.filter((function(item,idex,arr){
/*过滤条件
*/
return item > 3
})
some()判断数组里面使用有满足条件的数据只要有一条满足就会放回true 否则返回false
every()要求数组中每条都要满足条件才会发回true 否则返回false
reduce()归并数组里面的和
参数1 回调函数  参数2 [初始值]
var arr = [1,2,3,4,5]
var b = arr.reduce((a,b)=>{
return  a+b   //让两个参数相加
},10)
var b = arr.reduce((a,b)=>a+b,10)
把数组里面的合并一起编程负数返回出来
var b = arr.reduce((a,b)=>a-b,-10)

数组
Set数据类型
定义 set数据类型的值是唯一的不会出现重复的自带去重功能他的键值对相同
合并两个数组并去重
var arr = [1,2,3,4,5]
var arr2 = [1,2,3,4,6,4,7,8]
var a = new Set([...arr,...arr2])set数据类型转换成数组
方法1: var b = Array.from(a)
方法2: var b = [...a]
遍历set数据
var a = new Set([1,2,3,'张三','李四'])
方法1 使用for of
for(var i of a ){
console.log(i)
}
方法2 使用forEach
a.forEach(a=>console.log(a))
获取所有的key a.keys()   获取所有的值  a.values()  获取所有的键值对 a.entries()
set数据类型里面提供的方法
add()添加数据 
delete()删除指定的数据,根据值去删
clear()删除所有的数据
has() 查询数据,根据值去删
size()获取长度
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值