新聞中心
1.數組的常用方法

成都創(chuàng)新互聯(lián)公司專注于豐都網站建設服務及定制,我們擁有豐富的企業(yè)做網站經驗。 熱誠為您提供豐都營銷型網站建設,豐都網站制作、豐都網頁設計、豐都網站官網定制、小程序定制開發(fā)服務,打造豐都網絡公司原創(chuàng)品牌,更為您提供豐都網站排名全網營銷落地服務。
push(val):數組的末尾添加新的元素,返回操作完成后數組的長度
pop():刪除數組最后一個元素,返回被刪除的元素
shift():刪除數組的第一個元素,返回被刪除的元素
unshift(val):數組的開頭添加新的元素,返回操作完成后數組的長度
2.數組的遍歷
數組遍歷可以使用for循環(huán)和foreach
3.ES6數組新增方法
filter(cb):過濾
some(cb) :檢測數組中是否有元素滿足條件,只要有一個滿足就返回true,否則返回false
every(cb):所有元素都滿足才會返回true,否則返回false
reduce(cb):累加器
reduce()對數組元素進行遍歷,每次遍歷就進行依次累加計算,遍歷結束后返回累加的最終值
語法:arr.reduce((要累加并返回的數,數組元素) => {},初始值)
var list = [
{name:'西瓜',price:2,num:2},
{name:'香蕉',price:4,num:1},
{name:'玉米',price:2,num:5},
{name:'蘋果',price:8,num:1}
]
var totalPrice = list.reduce((total,item) => {
return total + item.price * item.num
},0)
console.log(totalPrice) // 264.查找數組的子元素
查找數組元素的下標
indexOf():返回具體元素在數組中的下標
findIndex(cb):查找符合條件的第一個元素的下標
lastIndexOf()和indexOf()的功能一樣,不同的是lastIndexOf()從后往前查找
查找符合條件的第一個數組元素 find(cb)
這個方法跟filter()差不多,只是這個只查找一個。而filter()會查找所有符合條件的數組元素
判斷一個數組是否含有某個子元素 includes()
5.數組轉換
數組與字符串間的轉換 split()/join()
偽數組轉化為數組(一個對象,如果可以通過下標的形式訪問屬性值,那么它就屬于偽數組)
Array.from() 推薦
Array.prototype.slice()
通過某些方法獲取到的Dom元素是一個偽數組,不能正常使用foreach(),除非先轉換成數組
6.數組排序
1.插入排序
從第二個元素開始,拿他前面的元素與它比較,如果它比前面的元素小,則這個對比元素往后挪一個位置(實際上是arr[p + 1] = arr[p]),接著往左邊找對比元素左比較,直到找到最后一個或者比它小的元素位置為止,此時將這個元素放到這個相應的位置(arr[p + 1] = temp),每輪循環(huán)結束都能保證前面的數據是升序排列的
2.快速排序
將一個數組的中間元素取出(splice,這個方法會改變原數組,同時將將截取的元素以數字的形式返回),然后定義兩個左右空數據,遍歷這個原數組,將小于被取出元素值的元素放入左邊的數組,反之放入右邊的數組,一輪循環(huán)之后將這左右兩個數組和中間元素拼接起來,同時對左右數組進行遞歸調用
var arr = [4, 3, 6, 7, 5, 19, 2];
var newArr = quickSort(arr);
console.log(newArr);
function quickSort(arr) {
if (arr.length <= 1) return arr;
else {
var center = parseInt((arr.length - 1) / 2);
var centerValue = arr.splice(center, 1)[0];
var left = [];
var right = [];
for (var i = 0; i < arr.length; i++) {
if (arr[i] <= centerValue) {
left.push(arr[i]);
} else {
right.push(arr[i]);
}
}
return quickSort(left).concat(centerValue, quickSort(right));
}
}3.sort排序
7.其他方法
數組反轉 reverse() 將當前數組反轉,會改變當前數組
剪接數組 splice() 會改變當前數組
可以刪除任意數組元素,還可以向數組添加元素
語法:arr.splice(index,num,item1,item2...)
index:規(guī)定從何處添加/刪除元素
num:刪除多少元素
后面的參數可以是0個也可以是多個,表示要添加的數組元素
數組剪切 slice() 根據給定的下標,將兩個下標之間的元素以數組形式返回,不會改變原數組
語法:arr.slice(n,m) 將arr[n]到arr[m-1]之間的元素以數組形式返回
拼接2個數組 concat()
不會改變原數組,而是將拼接后的新數組返回
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持創(chuàng)新互聯(lián)。
網站欄目:JavaScriptArray對象使用方法解析
文章網址:http://fisionsoft.com.cn/article/gdohdo.html


咨詢
建站咨詢
