JS 陣列(Arrey)屬性以及方法詳解

2021-09-13 21:09:01 字數 3513 閱讀 9338

好久的沒寫文章了,有點愧疚啊....(面壁反省中...)。感覺不論寫的水平如何,還是先要把自己寫文章的習慣養成才行。文學能力略差,各位大佬勿噴.

陣列建立

var arr = new array("a","b","c");
或者

var arr = new array(10);

//建立乙個長度為10 的空陣列

或者

var arr = ["a","b","c"]
目前沒發現這兩種方式有啥區別,如有大神知道,歡迎補充。

建立好訪問就可以通過陣列下標訪問了,稍微有點基礎的同學基本都知道,就不多bb了。

遍歷陣列

var arr = ["a","b","c"];

arr.foreach(function(item,index))

或者

var al = arr.length;

for(var a=0;a兩種方式可以通過自己**當時的邏輯進行選擇,各有各的優點吧。

陣列元素新增

var arr = ["a","b","c"];

新增到最後面

arr.push("d");    // ["a","b","c","d"]
新增到最前面

arr.unshift("x")  // ["x","a","b","c"];
陣列元素的刪除以及陣列的切分

var arr = ["a","b","c","d","e","f"];
刪除陣列最後一項

arr.pop();   // ["a","b","c","d","e"]
刪除陣列第一項

arr.shift();  // ["b","c","d","e","f"]
擷取陣列的一部分

// 擷取陣列的某一部分,原陣列變成擷取後剩餘的陣列,返回值為擷取的部分

arr.splice(1,4) // ["b","c","d","e"] arr=> ["a","f"]

// 第乙個引數:1 指要擷取的開始位置(下標)

// 第二個引數:4 指要擷取的長度

獲取陣列的一部分

// 原陣列不變,返回值為需要的陣列

arr.slice(1,4) // ["b","c","d"] arr不變

// 第乙個引數:1 指要獲取陣列的開始位置(下標)

// 第二個引數:4 指要獲取陣列的結束位置(下標)

複製乙個陣列

var new_arr = arr.slice()    

//也可以通過轉換字串的方式 ,看個人喜好了....

var new_arr = arr.copywithin()

// 這個方法並不常用,而且不是深度複製,當你改變new_arr後arr也會隨著改變

獲取陣列某一元素下標

arr.indexof("b")     // 1
獲取陣列長度

arr.length            // 6
填充陣列

arr.fill("x",2,5)    //[ 'a', 'b', 'x', 'x', 'x', 'f' ]

// 第乙個引數:"x" 要填充的元素值

// 第二個引數為要填充的開始位置,第三個為要填充的結束位置(下標值)

顛倒陣列的順序

arr.reverse();     // [ 'f', 'e', 'd', 'c', 'b', 'a' ]
陣列排序

arr.sort()        // ["a","b","c","d","e","f"]

// 預設按首字母進行排序

// 方法接受乙個function引數可以自己定義安什麼排序,function返回1或者-1

合併兩個陣列

var arr1 = ["a","b","c"] var arr2 = [1,2,3]

var new_arr = arr1.concat(arr2) // [ 'a', 'b', 'c', 1, 2, 3 ]

// 合併以後返回的是乙個全新的陣列改變原有的arr1或者arr2不會影響new_arr

判斷陣列是否包含某個元素

var arr. includes("b")    // true

// 後面還有乙個引數 可以指定查詢的開始位置

// 這個方法並不常用而且存在相容性問題

用乙個字串連線陣列元素

arr.join("-")    // 'a-b-c-d-e-f'

// 常用這個方法用來吧陣列轉為字串 引數可以為空或者空字串

陣列轉為字串

arr.tostring()    //'a,b,c,d,e,f'

arr.tolocalestring() //'a,b,c,d,e,f'

陣列迭代器

var a = ['a', 'b', 'c'];

var iterator = a.entries();

console.log(iterator.next().value); // [0, 'a']

console.log(iterator.next().value); // [1, 'b']

console.log(iterator.next().value); // [2, 'c']

var arr = ['a', , 'c'];

var sparsekeys = object.keys(arr);

var densekeys = [...arr.keys()];

console.log(sparsekeys); // ['0', '2']

console.log(densekeys); // [0, 1, 2]

// 迭代器平時不怎麼常用,但是在某些關鍵地方有時候還是會給我們帶來很大的幫助的。

以上大概就是js中陣列的一些常見的屬性及方法了,如有遺漏歡迎各位大神及時指出補充。

js陣列基礎 屬性及方法

建立陣列 var arr 通過建構函式的方式 var arr new array 儲存資料 var arr 資料1 資料2 資料3 var arr new array 資料4 資料5 資料6 arr 3 資料7 arr 6 資料8 arr 6 資料9 console.log arr 1 遍歷陣列 f...

js 陣列物件的屬性方法整理

建立與運算元組 1 陣列建立的三種方法 var arr new array 建立空陣列,未指定長度。var arr new arry 4 建立陣列,長度為4 var arr new arry 1,2,3,a b 建立陣列,並初始化。陣列其實是動態的,可以自由延伸。2 自定義陣列建構函式並建立陣列 需...

JS物件 陣列總結 建立 屬性 方法

1 建立字串 1.1 new array var arr1 new array var arr2 new array 6 陣列的長度為6 var arr3 new array 1,2,3,4 括號中的元素為陣列的項,length為元素個數 1.2 簡寫 var arr4 1,2,3,4 2 陣列的屬...