数组

本文深入讲解JavaScript数组的定义、初始化、访问、赋值、遍历、排序及增删操作。涵盖数组的各种方法,如push、pop、unshift、shift、sort、concat、slice、splice和join等,帮助读者全面掌握数组的使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

数组的定义:

new Array(参数,参数):只有一个数字参数时是数组的长度(new可以忽略,但一般尽量写上)

var arr =new Array(); //定义一个空数组

var arr = new Array(10)//创建一个包含10个元素的数组,没有赋值;

var arr2 =new Array("1233",30) //创建一个数组有两个元素

var arr3 =[1,2,3,4,5]; //字面量定义方式

使用数组元素(访问):

arr[0]:表示数组的第一个元素,0是下标,也叫索引;

数组的长度:(length属性)-------->  数组的个数   arr.length

数组的下标 :下标就是索引,即元素的序号,从0开始,下标最大取值是:数组的长度(length-1)

数组赋值

给数组赋值,就是给数组的元素赋值,需要通过给数组的每个元素一一赋值。

arr[0]=20;//让数组的第一个元素的值为20;

以下为通过循环给数组的每个元素赋值,赋成下标的平方。

for(var i=0;i<10;i++){
    arr[i]=i*i
}

//以下为通过循环给数组的每个元素赋值,随机数:Math.random()

for(var i=0;i<10;i++){
    arr[i]= Math.random();
}

数组的使用:

不能一次使用整个数组,使用数组就是在使用数组的每个元素,因为数组相当于若干个相同类型的变量。

遍历数组:

普通for循环

for ......in 语句用于遍历数组或者对象的属性(快速遍历)

for(var i=0,i<10;i++){
        
    document.write(arr[i]);
}

for(var i in arr){
        
    document.write(arr[i]);
}

数组的添加删除

push()  (尾部添加)  pop()  (尾部删除)

unshift()  (前面添加)  shift()  (前面删除)

数组排序

reverse()  (倒序)   sort()   (升序)

//如果一定要使用sort() 进行排序,可以传递一个函数

function compare(value1,value2){
    if(value1<value2){
       return -1 ;//返回0和-1 表示不换值
    }else if(value1 == value2){
        return 0;
    }else{
        return 1; //返回1,表示换值
    } 
}

var box=[0,2,3,4,5,7,2];
var reslute=box.sort(compare); //返回升序的数组

concat() :追加数据,创建一个新数组,不改变原数组

var box=[2,3,4,'123','345'];

var box2 =box.concat('567','89967');

alert(box)

alert(box2);

slice():不修改原数组,将原数组中的指定区域数据提取出来

var box =[2,3,4,'绿巨人'];
var box2 =box.slice(1,3) ;//并没有修改原数组,取得是下标区域:[1,3]

splice():截取原数组中指定的数据,会改变原数组

var box =[2,3,4,'绿巨人'];
var box2 =box.splice(1,3) ;//第一个参数代表我要开始截取的下标位置,第二个参数截取的长度,如果只有两个参数,则表示删除操作


插入:如果有3个或以上参数,且第二个参数(长度)为0,则表示插入
var box2 =box.splice(1,0,'绿巨人','绿巨人2'); 
在下标为1的位置插入:'绿巨人','绿巨人2'


替换:如果有3个或以上参数,且第二个参数(长度)不为0,则表示替换
var box2 =box.splice(1,1,'绿巨人','绿巨人2'); 
在下标为1的位置替换成:'绿巨人','绿巨人2'


删除:如果只有2个参数,则表示删除指定区域的数据
var box2 =box.splice(0,2,); 
删除原数组的部分数据,并返回截取的数据

用数组的元素组成字符串  ------- join()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值