一、陣列遍歷和其他
1.合并陣列
- 陣列.concat(陣列1,陣列2,陣列3,...)
- 可以用來合并多個陣列
//合并多個陣列concat var arr = ["zhangsan","lisi","wangwu"]; var arr1 = ["zhaoli","liqi"]; var arr2 = ["xiaoliao"]; var newArr = arr.concat(arr1);//合并了兩個陣列 console.log(newArr)
運行結果 
2.查找元素索引
- indexOf(searchElement,position)和lastIndexOf(searchElement,position)
- searchElement是要找的元素(變數),position就是從陣列的哪里開始找,回傳的是第一個找到的索引;
- 注意第二個函式是從后往前找到的第一個元素索引
//indexOf()和lastIndexOf() var n1 = 3; var arr3 = [5,3,5,77,4,5,6,8]; console.log(arr3.indexOf(5, 0)); console.log(arr3.lastIndexOf(5, 5));
顯示結果 
3.foreach
- 使用一個特殊的格式
//forEach遍歷 var arr4 = ["zhangsan","lisi","wangwu"]; arr4.forEach(function (value,index,array) { console.log(value); console.log(index); console.log(array); })
顯示結果 
二、陣列排序
1.sort函式
- 排序是按照字符編碼來進行排序的,如果想要按照其他標準進行排序,那么需要提供比較函式,該函式比較兩個值,然后回傳一個用于說明這兩個值的相對順序的數字,比較函式具有兩個引數a和b,其回傳如下:
| 型別 | 結果 |
|---|---|
| a<b | a出現在b之前,回傳一個小于0的值 |
| a=b | 回傳0 |
| a>b | a出現在b之后,回傳一個大于0的值 |
//sort函式 var arr5 = ["Tim","Andy","John","Kobe","James"]; console.log(arr5.sort()); var arr6 = [10,4,8,6,7,100]; console.log(arr6.sort());//可以看出即使是數字也會按照編碼規則進行排序,而不是按照數字大小來進行排序 function sortNumber(a,b) { return a-b;// } console.log(arr6.sort(sortNumber));//把這個比較函式傳入就可以改寫sort的排序邏輯
** 運行結果 ** 
2.使用冒泡排序來實作sort函式
- 知識點:用函式作為引數傳入
/** * sort的內部實作 * @param {Array}array * @param {Function}fnCompare */ function sort(array,fnCompare){ //這個排序方法是冒泡排序,并且是先排大的值, for(var i=0;i<array.length-1;i++){//可以看出陣列的長度函式和Java一樣 //標記是否完成了排序 var sortFlag = true; //控制比較次數 for(var j=0;j<array.length-1-i;j++){ if(fnCompare(array[j],array[j+1])>0){//如果沒有>0的話,那就會出現永真的狀況 sortFlag = false; //交換位置 var temp = array[j]; array[j] = array[j+1]; array[j+1] = temp; } } //判斷 if (sortFlag){ break; } } } var arr7 = [10,20,5,1000,50]; sort(arr7,sortNumber); console.log(arr7);
顯示結果 
三、原始碼:
- D21_1_TraverseArray.html
- 地址:
https://github.com/ruigege66/JavaScript/blob/master/D21_1_TraverseArray.html - 博客園:
https://www.cnblogs.com/ruigege0000/ - 歡迎關注微信公眾號:傅里葉變換,個人賬號,僅用于技術交流,后臺回復“禮包”獲取Java大資料學習視頻禮包

轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/50003.html
標籤:JavaScript
