cocos2d-js中陣列基本知識點
阿新 • • 發佈:2019-01-24
陣列是物件的特殊形式。所有的陣列都是物件。
1.稀疏陣列就是包含從0開始的不連續索引的陣列。如果陣列是稀疏的,length屬性值大於元素的個數。
unshift()方法是在陣列的首部插入一個元素。push()方法是依次往陣列中新增元素。splice()方法是從start位置開始刪除
deleteCount項元素,並從該位置起插入var1,var2,... : splice(start,deleteCount,val1,val2,...)
示例:
var arr = [] arr.push(1) // arr [1] arr.push(3,2) // arr [1,3,2] arr.unshift(5,6) // arr [5,6,1,3,2] arr.splice(0,0,11,12,13) // arr [11,12,13,5,6,1,3,2]
2.delete不會修改陣列的length屬性,刪除後的陣列會變成稀疏陣列。pop()是刪除陣列中的最後一個元素,減少陣列的長度並返回刪除後的陣列。shift()方法和unshift()方法對立,shift()方法是刪除陣列第一個元素。
示例:
var arr = [1,2,3,4,5] arr = [] arr.length = 3; // arr [1,2,3] 不常用 var s = arr.shift() // s 1 arr [2,3,4,5] var s = arr.pop() // s 5 arr [1,2,3,4] arr.splice(1,100,11,12,13) // arr [1,11,12,13] splice(start,deleteCount,val1,val2,...):從start位置開始刪除deleteCount項,並從該位置起插入val1,val2,...
3.join()將陣列中的所有元素都轉化為字串並連線在一起,返回最後生成的字串。
示例:
var arr = [1,2];
var s = arr.join() //s "1,2"
4.reverse()是將陣列中的元素顛倒順序,返回逆序的陣列。
示例:
var arr = [1,2];
var s1 = arr.reverse(); //s1 [2,1]
5.sort()方法是將陣列中的元素排序並返回排序後的陣列。如果陣列中包含undefined元素,它們會被排到陣列的尾部。
示例:
var arr = [9,6,3,5,9,58,7,4]; arr.sort(); cc.log(arr); // arr [3,4,5,58,6,7,9,9] arr.sort(function(a, b){ if(a > b) return 1; else return -1; }); cc.log(arr); // arr [3,4,5,6,7,9,9,58]
6.concat()是拼接兩個陣列,並且返回這兩個陣列拼接完成後的新的陣列。
示例:
var arr1 = [1,2];
var arr2 = [2,3,4];
var arr3 = arr1.concat(arr2);
cc.log(arr3); // arr3 [1,2,2,3,4]
7.slice()是返回指定陣列的一個片段或者子陣列。它的兩個引數分別指定了片段開始和結束的位置。如果引數出現負數,它表示相對於陣列中最後一個元素的位置。slice()不會修改呼叫的陣列。
示例:
var arr = [1,2,3,4,5,6,7,8,9]
var a = arr.slice(3,5) // a [4,5] arr 原來未動
8.slice()方法還有一個作用,它不帶引數時便表示把指定陣列元素全部返回,這樣就起到了一個類似複製的作用。
示例:
var arr1 = [1,2,3,4,5,6,7,8,9];
var arr2 = arr1.slice(); // arr2 [1,2,3,4,5,6,7,8,9] arr1 原來未動