EA&UML日拱一卒-0基礎(chǔ)學(xué)習(xí)微信小程序(11)-ECMAScript3數(shù)組操作方法
在小程序中大量使用了數(shù)組和數(shù)組方法,有些代碼從C/C++程序員的觀點來看時會相當(dāng)費(fèi)解,我們暫且放下小程序的說明,盡量簡單地說明一下數(shù)組的使用方法。
ECMAScript3數(shù)組操作方法
格式化輸入數(shù)組
可以指定輸出是各個元素之間的連接字符串。
?a = [2017, 8, 29];
a.jion("/");? //輸出結(jié)果:”2017/8/29“
顛倒元素的順序
a = [1, 2, 3];
a.reverse(); // =>a = [3, 2, 1]
數(shù)組排序
a = [2017, 8, 29];
a.sort();? //=>a = [8, 29, 2017]
可以通過傳遞比較函數(shù)定制排序規(guī)則.
a = [2017, 8, 29];
a.sort(function(a, b){
????????return b - a;??? //降序
??? }
);? //=>a = [2017, 29, 8]
數(shù)組連接
a = [1, 2, 3];
a.concat(4, 5);? //=>a = [1, 2, 3, 4, 5]
a.concat([6,7],[8, 9, 10]); //a= [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
取得數(shù)組片段
a = ["A", "B", "C", "D", "E"];
//指定開始位置,結(jié)束位置(不包含)。
a.slice(0, 2);? //返回["A", "B”]
//只指定開始位置,
a.slice(3);? //返回["D", "E”]
//指定開始位置,從最后一個元素計算的結(jié)束位置
a.slice(-5, -3);? //返回["A", "B”]
指定區(qū)間替換數(shù)組元素
a = [1, 2, 3, 4, 5];
//將從第2個元素(索引值為1)開始的2個元素,
//替換成splice第3個參數(shù)開始后面的3個元素
b = a.splice(1, 2, "A", [10,20], "B”);?
這段程序執(zhí)行之后數(shù)組a的內(nèi)容為[1, "A",[10,20],"B",4,5],返回值的數(shù)組b為[2, 3]。如果只指定第一個參數(shù)則從源數(shù)組中切分并返回指定位置以后的所有元素;如果指定前兩個參數(shù),則相當(dāng)于從源數(shù)組中摳出一部分返回。
在尾部添加和刪除元素
a = [1, 2, 3];
a.push(4, 5);? //=>a = [1, 2, 3, 4, 5]
a.pop(); //=>a = [1, 2, 3, 4];
在頭部插入和刪除元素
a = [1, 2, 3]
a.unshift(4, 5, 6);//=>a=[4, 5, 6, 1, 2, 3]
a.shift(); //=>a=[5, 6, 1, 2, 3]
將數(shù)組轉(zhuǎn)換成字符串
?["I", "You", "Who"].toString(); //=>"I,Your,Who"
參考資料
【JavaScript權(quán)威指南,機(jī)械工業(yè)出版社】
寫在文章的最后