Js数组详解

1、概念

一组数据的有序的集合 (可以存储任意数据类型的值)。

2、数组的定义

  • 直接定义
//直接用[]创建
var arr = [12,34,1,43,12,3]
console.log(arr);
//[]里可以不带参数
var a4=[];
a4[0] = 1;
a4[1] = 5;
console.log(a4);
  • 通过构造函数来创建
//通过new Array()来创建
var arr1 = new Array(12,34,1,43,12,3)
console.log(arr1);
//new Array()括号里可以只带一个值代表数组长度
var arr2 = new Array(5);  //  这代表存储数组的长度为5
      console.log(arr2);
//new Array()括号里可以不带参数
var a1=new Array();
a1[0] = 34;
a1[1] = 55;
console.log(a1);

3、数组元素的获取

数组名[下标];

js数组元素的下标序号是从0开始,下标最大取值是“数组长度-1”;下标可以是变量或表达式,通过索引来访问数组中任意元素。

//arr1.length  数组长度
var arr1=[1,2,3,4,5];
alert(arr1[0]);  //输出结果是1,下标0代表第一个元素
alert(arr1[arr1.length-1]);  //输出结果是5,下标length-1代表最后一个元素
arr1[2]=7;  //通过下标修改了第三个元素的值
alert(arr1[2]);  //输出结果是7

案例;

 // 求数组元素的所有的 奇数和
var arr = [12, 23, 34, 13, 5];
var sum = 0;
for (var i = 0; i <= arr.length - 1; i++) {
      if (arr[i] % 2 == 1) {
       sum += arr[i]
       }
}
console.log(sum);

4、数组的遍历

循环访问数组的每一个元素的过程就叫做数组的遍历。

  • for循环方式
//for循环遍历
var arr1=[1,2,3,4,5,6];
  for(var i=0;i<arr1.length;i++){
  console.log(arr1[i]);
  }
  • for in 方式
// for in 遍历  
var arr1=[1,2,3,4,5,6];
  for(var i in arr1){
  console.log(arr1[i]);
  }

5、数组的常见函数

  • push(参数1,参数2)

     向数组的末尾添加一个或多个元素,并返回新的长度。
    
var arr1=[1,2,3];
var len=arr1.push(7);  //向数组末尾添加元素,并返回数组的新长度
alert(len);  //输出4
  • pop()

     删除并返回数组的最后一个元素。
    
var arr1=[1,2,3];
x=arr1.pop();  //删除最后一个元素并返回被删除的元素
alert(x);  //输出3
  • unshift(参数1,参数2)

     向数组的开头添加一个或多个元素,并返回新的长度。
    
var arr1=[1,2,3];
x=arr1.unshift(8,9);  //向数组开头添加了两个元素,并返回新长度
alert(x);  //输出5
  • shift()

     删除数组的第一个元素,并返回第一个元素的值。
    
var arr1=[1,2,3];
x=arr1.shift();  //删除第一个元素并返回被删除的元素
alert(x);  //输出1
  • join(char)

     把数组元素(对象调用其toString()方法)使用参数作为连接符连接成一字符串。
    
var a = [11,22,33,44,55];
var b = a.join("*");  //b是字符串
document.write(b);
  • reverse():

     用于将数组逆序,与之前不同的是它会修改原数组。
    
var c = [12,34,56,76,59];
var d = c.reverse();
console.log(d);// [59,76,56,34,12]
  • sort()

     用于对数组进行排序。
    
//从小到大排序
var arr = [12,45,32,13,78,64,2];
arr.sort(function(a,b){
     return a-b;//从小到大
})
document.write(arr);
//从大到小排序
var arr = [12,45,32,13,78,64,2];
arr.sort(function(a,b){
     return b-a;//从大到小
})
document.write(arr);

6、二维数组

一维数组元素内容为数组。

//二维数组的遍历
var a = [[1,2,3],[4,5,6],[7,8,9]];
for(var i=0; i<a.length; i++){
     for(var j=0; j<a[i].length; j++){
          document.write(a[i][j] + " ");
     }
     document.write("</br>");
}
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值