Cocos-Js准备(二)-数组

本文详细介绍了在Cocos-Js中使用Array对象进行各种数组操作的方法,包括但不限于增删改查等基本操作,同时探讨了其在游戏开发中的应用。

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

数组

    js中的同一个数组可以存储多种类型的值,并且长度可以动态的调整。
    创建数组的方式分为构造函数和字面量
    1、使用构造函数的方式:
    var a1 = new Array();//空数组
    var a2 = new Array(5);//指定长度
    var a3 = new Array(1,2,"hello");//带初始元素的数组

    2、使用字面量的方式
    var a4 = [];//空数组,和new Array()等价
    var a5 = [10];//数组中有一个值10;

注意:
    js中数组下标从0开始

Array对象的方法:

1、concat()   连接两个或更多个数组并返回新数组
     var n1 = [1,2,3,4];
     var n2 = [5,6,7,8];
     var x = n1.concat(n2);
     for(var i in n2)
     {
         console.log(n2[i]);
     }
2、join()     把数组的所有元素放入一个字符串,元素通过指定的分隔符号分离
var n1 = [1,2,3,4];
var str = n1.join("。");
console.log(str);
//输出结果为1。2。3。4
//返回字符串,该字符串是把数组中每个元素转成字符串,并把这些字符串连接,其中插入指定字符串
3、pop()  删除并返回数组中最后一个元素
var n1 = [1,2,3,4];
var num = n1.pop();
console.log(num);
console.log(n1.length);//n1.length为数组的长度
4、push() 向数组的末尾添加一个或多个元素,并返回新长度。
var n1 = [1,2,3,4];
var num = n1.push(5,9);
console.log(num);//输出结果为6
5、reverse()  逆序数组,注意会改变原数组
var n1 = [1,2,3,4];
n1.reverse();
for(var i in n1)
{
    console.log(n1[i]);
}
5、shift() 删除并返回数组中的第一个元素
var n1 = [1,2,3,4];
var num = n1.shift()
console.log(num);//1
console.log(n1.length)//3
6、slice(start,end) 从数组中返回选定的数组。
    start为必需参数,规定从何处开始选取,如果是负数,从末尾开始,如-1表示最后一个元素,依次类推;
    end为可选参数,指定结束处数组下标,不指定参数自动到末尾;
    注意:左闭合区间,返回新数组
var n1 = [1,2,3,4];
var n2 = n1.slice(1,3);
for(var i in n2)
{
    console.log(n2[i]) ;
}
//输出 2,3
7、sort() 对数组中元素排序,可指定排序规则
默认排序规则为按照数组中元素的字符编码进行升序排列
如果按照其它标准进行排序,需要提供比较函数,比较函数应该有两个参数a,b,返回值如下:
*若a < b,想要实现排序后a在b前,则返回一个小于0的值;
*若a == b,返回0;
*若a > b,则返回一个大于0的值
var n1 = [4,2,5,7,3];
n1.sort(function (a,b) {
    if (a < b)
    {
        return 1;
    }else if(a == b)
    {
        return 0;
    }
    else {
        return -1;
    }
})//实现一个降序排列
for(var i in n1)
{
    console.log(n1[i]) ;
}
//输出:7、5、4、3、2
8、splice() 从数组中添加删除项目,返回被删除的项目;该方法改变原数组;
splice(index,how many,item...);
index 必需,整数,规定添加删除项目的起始位置,负数从末尾
how many,必需,要删除元素的数量,0不删除
item... 可选向数组中添加新条目
var n1 = [1,2,3,4,5,6,7,8];
var n2 = n1.splice(2,2,9,8);
for(var i in n1)
{
    console.log(n1[i]);
}
//输出 1,2,9,8,5,6,7,8
for(var i in n2)
{
    console.log(n2[i]);
}
//输出 3,4
9、toString() 数组转成字符串
 var num = [1,2,3,4,5];
 console.log(num.toString());
 //输出 1,2,3,4,5

10、unshift() 向数组的开头添加一个或多个元素,并返回新长度
    unshift() 方法将把它的参数插入 arrayObject 的头部,并将已经存在的元素顺次地移到较高的下标处,以便留出空间。该方法的第一个参数将成为数组的新元素 0,如果还有第二个参数,它将成为新的元素 1,以此类推。
    请注意,unshift() 方法不创建新的创建,而是直接修改原有的数组
 var num = [1,2,3,4,5];
 console.log(num.unshift(9,8));
 for(var i in num)
 {
     console.log(num[i]);
 }
 //输出7
 //输出9,8,1,2,3,4,5
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值