10_JS数组

JS 数组

以索引为键的对象,性能高于对象

创建

  • new Array()
var arr = Array()
for(var i = 0;i<5;i++){
  arr[i] = i;
};
var arr = Array(1,2,3,4,5,6)
  • 数组字面量
var arr = [2,3,4,5,6,7,8];

不同:传入一个整数时,new把这个数当作数组长度,字面量当作一个元素

常用方法

  • length:返回长度,也可以修改长度
var arr = [2,3,4,5,6,7,8];
console.log(arr.length)
// 修改长度,大于本来的长度,添加空的元素
arr.length = 10;
console.log(arr);
// 修改长度,小于本来的长度,删除多的元素
arr.length = 3;
console.log(arr);
  • pop():删除并返回最后一个元素
  • push():在最后添加一个元素并返回
  • unshift():在开头添加并返回一个元素
  • shift():删除并返回第一个元素
  • slice(start,end):类似切片,异地操作
  • splice(start,num,···):原地操作,删除并向数组中添加元素,参数:开始删除的位置和删除的数量,插入的新元素
  • concat():异地操作,拼接多个数组并返回
  • join():异地,将数组转换为字符串
  • reverse():反转数组
  • sort():排序

自定义排序规则
默认按照unicode编码顺序排序,这样对数字排序会出错
返回大于0的值交换位置,否则保持

arr.sort(function(a,b){
  // 方法1
  // if(a>b){
  //   return -1;
  // }else if(a == b){
  //   return 0;
  // }else{
  //   return 1;
  // }
  //方法2
  return b-a;
});
console.log(arr);

遍历数组

  • for循环
  • 使用forEach()方法,有的浏览器不支持,需要一个函数做参数(匿名函数),数组中有几个元素,函数就会执行几次,每次循环数组中的元素都会以实参的形式传给函数(会同时传三个,第一个是值(value),第二个是索引(index),第三个是正在遍历的数组(object))
  • JS访问越界的数组不会报错,会输出underfind
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Junebao

如果你碰巧财力雄厚的话...

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值