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

首頁 > 語言 > JavaScript > 正文

JavaScript中數組Array方法詳解

2024-05-06 15:10:43
字體:
來源:轉載
供稿:網友

ECMAScript 3在Array.prototype中定義了一些很有用的操作數組的函數,這意味著這些函數作為任何數組的方法都是可用的。

1、Array.join()方法

Array.join()方法將數組中所有元素都轉化為字符串并連接在一起,返回最后生成的字符串。可以指定一個可選的符號或字符串在生成的字符串中來分隔數組的各個元素。如果不指定分隔符,默認使用逗號。注意:此方法不會改變原始數組

var arr = ['a', 'b', 'c'];console.log(arr.join()); // a,b,cconsole.log(arr.join(" ")); // a b cconsole.log(arr.join("")); // abcconsole.log(arr.join("slf")); // aslfbslfcvar arr2 = new Array(10);console.log(arr2.join("-")); // ---------

擴展:Array.join()方法是String.split()方法的逆向操作,后者是將字符串分割成若干塊來創建一個數組。

2、Array.reverse()方法

Array.reverse()方法將數組中的元素顛倒順序,返回逆序的數組。它采取了替換;換句話說,它不通過重新排列的元素創建新的數組,而是在原先的數組中重新排列它們。注意:此方法會改變原始數組。

var arr = ['a', 'b', 'c'];console.log(arr.reverse()); // ['c', 'b', 'a']console.log(arr); // ['c', 'b', 'a']

3、Array.sort()方法

Array.sort()方法將數組中的元素排序并返回排序后的數組。當不帶參數調用sort()方法時,數組元素以字母表順序排序。注意:此方法會改變原始數組。

var arr = ['ba', 'b', 'ac'];console.log(arr.sort()); // ['ac', 'b', 'ba']console.log(arr); // ['ac', 'b', 'ba']

如果數組包含undefined元素,它們會被排到數組的尾部。

var arr = new Array(4);arr[0] = 'ba';arr[1] = 'b';arr[2] = 'zc';arr[3] = undefined;console.log(arr.sort()); // ['ac', 'b', 'ba', undefined]console.log(arr); // ['ac', 'b', 'ba', undefined]

如果想按照其他方式而非字母表順序進行數組排序,則必須給sort()方法傳遞一個比較函數。該函數決定了它的兩個參數在排好序的數組中的先后順序。假設第一個參數在前,比較函數應該返回一個小于0的數值。反之,假設第一個參數在后,函數應該返回一個大于0的數值。并且,假設兩個值相等(它們的順序無關緊要),函數應該返回0。例如,用數值大小而非字母表順序進行數組排序,代碼如下:

var arr = new Array(4);arr[0] = 45;arr[1] = 12;arr[2] = 103;arr[3] = 24;console.log(arr.sort()); // [103, 12, 24 45]console.log(arr.sort(function(a, b){return b-a;})); // [103, 45, 24, 12]

有時候需要對一個字符串數組執行不區分大小寫的字母表排序,這時可以使用比較函數,首先將參數都轉化為小寫字符串(使用toLowerCase()方法),再開始比較。

var arr = ['abc', 'Def', 'BoC', 'FED'];console.log(arr.sort()); // ["BoC", "Def", "FED", "abc"]console.log(arr.sort(function(s, t){  var a = s.toLowerCase();  var b = t.toLowerCase();  if (a < b) return -1;  if (a > b) return 1;  return 0;})); // ["abc", "BoC", "Def", "FED"]            
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 崇州市| 克东县| 宁乡县| 虎林市| 扎鲁特旗| 开封县| 英山县| 武威市| 云南省| 天气| 乐安县| 浪卡子县| 石柱| 抚顺县| 峨边| 光山县| 陈巴尔虎旗| 汕头市| 睢宁县| 南部县| 永福县| 香港| 澄江县| 沁阳市| 长治县| 郓城县| 比如县| 清徐县| 资溪县| 南昌县| 东阳市| 铁岭市| 东阿县| 民丰县| 永兴县| 大化| 满洲里市| 庄浪县| 于田县| 洱源县| 新安县|