很久的沒寫文章了,有點愧疚啊....(面壁檢討中...)。感受不論寫的水平如何,仍是先要把本身寫文章的習慣養成才行。文學能力略差,各位大佬勿噴.
數組建立數組
var arr = new Array("a","b","c");
或者spa
var arr = new Array(10); //建立一個長度爲10 的空數組
或者code
var arr = ["a","b","c"]
目前沒發現這兩種方式有啥區別,若有大神知道,歡迎補充。
建立好訪問就能夠經過數組下標訪問了,稍微有點基礎的同窗基本都知道,就很少BB了。
遍歷數組排序
var arr = ["a","b","c"]; arr.forEach(function(item,index){ console.log(item,index) })
或者字符串
var al = arr.length; for(var a=0;a<al;a++){ console.log(arr[a]); }
兩種方式能夠經過本身代碼當時的邏輯進行選擇,各有各的優勢吧。
數組元素添加it
var arr = ["a","b","c"];
添加到最後面io
arr.push("d"); // ["a","b","c","d"]
添加到最前面console
arr.unshift("x") // ["x","a","b","c"];
數組元素的刪除以及數組的切分function
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中數組的一些常見的屬性及方法了,若有遺漏歡迎各位大神及時指出補充。