国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 語(yǔ)言 > JavaScript > 正文

JavaScript中數(shù)組對(duì)象的那些自帶方法介紹

2024-05-06 14:19:20
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
/**
* 本文純粹是梳理一下目前W3C標(biāo)準(zhǔn)中Array對(duì)象的自帶Method。
* 全文沒(méi)啥營(yíng)養(yǎng),不過(guò)最后性能測(cè)試的部分,倒是拋出了一些疑問(wèn)。
*/
賦值方法 (Mutator methods)
這些方法直接修改數(shù)組自身
pop 和 push
Array.pop(); // 刪除數(shù)組最后一個(gè)元素,返回被刪除的元素
Array.push(element1, ..., elementN); // 在數(shù)組尾部插入1-N個(gè)元素,返回操作后數(shù)組的length
通過(guò)這 pop 和 push ,就能把數(shù)組模擬成 堆棧(stack) 來(lái)進(jìn)行操作。
堆棧這種數(shù)據(jù)結(jié)構(gòu)的特點(diǎn),就是“后進(jìn)先出”(LIFO, Last In First Out)。
shift 和 unshift
Array.shift(); // 刪除數(shù)組第一個(gè)元素,返回被刪除的元素
Array.unshift(element1, ..., elementN) ; // 在數(shù)組頭部插入1-N個(gè)元素,返回操作后數(shù)組的length
利用 shift 和 unshift 則可以實(shí)現(xiàn) 隊(duì)列(queue) 的操作。
隊(duì)列的操作方式和堆棧相反,采用“先進(jìn)先出”(FIFO, First-In-First-Out)。
splice
代碼如下:
Array.splice(index , howMany[, element1[, ...[, elementN]]]);
Array.splice(index);

參數(shù):
index:規(guī)定從何處添加/刪除元素。
howmany:規(guī)定應(yīng)該刪除多少元素。
elements:規(guī)定要添加到數(shù)組的新元素,從 index 所指的下標(biāo)處開(kāi)始插入。
splice方法是對(duì) pop、push、shift、unshift 的一個(gè)補(bǔ)充。
返回值是被刪除的元素。
reverse
代碼如下:
Array.reverse(); // 顛倒數(shù)組中元素的順序,并返回逆序后的數(shù)組

sort
代碼如下:
Array.sort([compareFunction]);

如果調(diào)用該方法時(shí)沒(méi)有使用參數(shù),將按字母順序?qū)?shù)組中的元素進(jìn)行排序。
說(shuō)得更精確點(diǎn),是按照字符編碼的順序進(jìn)行排序。
如果想按照其他標(biāo)準(zhǔn)進(jìn)行排序,就需要提供比較函數(shù),該函數(shù)要比較兩個(gè)值,然后返回一個(gè)用于說(shuō)明這兩個(gè)值的相對(duì)順序的數(shù)字。比較函數(shù)應(yīng)該具有兩個(gè)參數(shù) a 和 b,其返回值如下:
•若 a 小于 b,在排序后的數(shù)組中 a 應(yīng)該出現(xiàn)在 b 之前,則返回一個(gè)小于 0 的值。
•若 a 等于 b,則返回 0。
•若 a 大于 b,則返回一個(gè)大于 0 的值。
--------------------------------------------------------------------------------
訪(fǎng)問(wèn)方法(Accessor methods)
這些方法只是返回相應(yīng)的結(jié)果,而不會(huì)修改數(shù)組本身
concat
代碼如下:
Array.concat(value1, value2, ..., valueN); // 鏈接2個(gè)或多個(gè)數(shù)組,并返回合并后的數(shù)組

但有一個(gè)需要注意的地方,用下面的例子說(shuō)明:
代碼如下:
var arr = [1, 2, 3];
arr.concat(4, 5); // return [1, 2, 3, 4, 5]
arr.concat([4, 5]); // return [1, 2, 3, 4, 5]
arr.concat([4, 5], [6, 7]); // return [1, 2, 3, 4, 5, 6, 7]
arr.concat(4, [5, [6, 7]]); // return [1, 2, 3, 4, 5, [6, 7]]

join
string = Array.join(separator);
把數(shù)組中的所有元素放入一個(gè)字符串。其中,元素之間是通過(guò)指定的分隔符進(jìn)行分隔的。
發(fā)表評(píng)論 共有條評(píng)論
用戶(hù)名: 密碼:
驗(yàn)證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 柳江县| 兴和县| 富裕县| 土默特右旗| 关岭| 卢湾区| 哈尔滨市| 瓦房店市| 格尔木市| 同江市| 肥乡县| 徐汇区| 元朗区| 建阳市| 大连市| 金坛市| 逊克县| 绥化市| 永川市| 政和县| 通道| 石狮市| 静宁县| 封丘县| 黑龙江省| 思南县| 闻喜县| 腾冲县| 昌江| 共和县| 大余县| 奉节县| 南岸区| 离岛区| 兴隆县| 陕西省| 黄浦区| 十堰市| 宁蒗| 西和县| 曲阳县|