JS学习笔记5

数组

数组的方法
1.push
格式:数组.push(参数1,参数2…)
功能:给数组末尾添加元素。
返回值:插完元素以后数组的长度

2.pop
格式:数组.pop()
功能:取出数组末尾的元素
返回值:从数组末尾取出的元素

3.shift
格式:数组.shift()
功能:取出数组头部的元素
返回值:从数组头部取出的元素

4.unshift
格式:数组.unshift(参数1,参数2…)
功能:从数组的头部插入元素
返回值:插完元素以后数组的长度

5.concat
格式:数组.concat(数组,数据…)
功能:拷贝原数组,生成新数组,合并数组
返回值:合成的新数组
注:原数组并不会改变!

var arr1=[10,20,30];
var arr2=[40,50,60];
var newArr=arr1.concat(arr2,70,"80",true);

6.slice
格式:数组.slice(start,end);[start,end)
功能:可以基于当前数组获取指定区域元素,提取出元素生成新数组。
返回值:生成的新数组
注:原数组不会发生改变

7.splice
格式:数组.splice(start,length,数据1,数据二…)
参数:start:开始截取的位置 ;length:截取的元素长度;第三个参数开始:在start位置,插入的元素。
返回值:截取下来的元素组成的数组

//在数组下标为2的地方插入hello
var arr=[10,20,30,40];
var res=arr.(2,0,"hello");
//在数组中删除30
var arr=[10,20,30,40];
var res=arr.(2,1);
//将数组中的20替换为world
var arr=[10,20,30,40];
var res=arr.(1,1,world);

8.join
格式:数组.join(字符串)
功能:将数组中的元素,用传入的拼接符,拼接成一个字符串。
返回值:拼接好的字符串

9.reverse
格式:数组.reverse()
功能:逆序

10.sort
格式:数组.sort()
功能:默认从小到大排序,按照字符串排序。
如果想要按照数值大小排序:

var arr=[1,20,15,5,8,2];
arr.sort(function(value1,value2){return value1-value2});

数组的引用
首先要明白一点,数组是引用数据类型,他和基本数据类型不同。
下面来看一个例子:

var arr1=[10,20,30,40,50];
var arr2=arr1;
arr2.push(60,70);
alert(arr1);

上面的例子最后arr1为10,20,30,40,50,60,70。因为arr1里面存的为数组的地址。arr2=arr1,即将arr1存储的地址赋给arr2,所以arr2和arr1存的为相同的地址,则指向同一块内存,则指向同一数组。

二维数组
数组中的元素可以是数组。

ECMA5新增数组的方法
1.indexof
格式:数组.indexof(item,strat);
参数:item任意的数据,start下标,可以不传入,默认是0
功能:在数组中查找第一次出现item元素下标,从start开始
返回值:找到返回下标,没找到返回-1

2.forEach
格式:数组.forEach(function(item,index,arr){//item:当前遍历到的元素,index:当前遍历到元素的下标 arr:数组本身})
功能:遍历数组

3.map
同上
区别:可以对元素进行运算后生成新数组,原数组不改变。

4.filter
语法同上
区别:过滤掉符合条件的元素后剩下的元素生成新的数组,原数组不改变。

5.some
语法同上
区别:在数组中查找是否又符合条件的元素,有返回true,没有返回false
短路操作:只要找到符合条件的元素,循环就会停止

6.every
语法同上
区别:在数组中查找每一个元素是否符合条件,都符合返回true否则返回false

7.reduce 归并
格式:数组.reduce(function(prev,next,index,arr){
return prev+next;})

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值