久久久久在线观看_又色又爽又黄的免费视频播放_一区中文字幕_日韩电影在线播放

今日焦點 焦點資訊 營銷之道 企業報道 淘寶運營 網站建設 軟件開發 400電話
  當前位置: 首頁 » 資訊 » 軟件開發 » 正文

js數組去重和排序詳解

放大字體  縮小字體 發布日期:2018-02-27  來源:企業800網  作者:新格網  瀏覽次數:562  【去百度看看】
核心提示:本文主要和大家分享js數組去重和排序詳解,希望能幫助到大家。
本文主要和大家分享js數組去重和排序詳解,希望能幫助到大家。

1、用 indexOf 查看是否存在,不存在沒添加

		var arr = ['aa','aa','aa','bb','bb',3,5,8,9,4,5,4];

		function unique(arr){
			var newArr = [];
			for(var i in arr){
				if(newArr.indexOf(arr[i]) === -1){
					newArr.push(arr[i])
				}
			}
			return newArr;
		}

2、用 再用 filter 篩選,再用 indexOf 查看是否存在

		function unique1(arr){
			function aa(item, index, array){
				return array.indexOf(item) === index;  // 當前值在原數組中第一次出現的位置 === 他的索引,就證明它不是重復的,然后就返回去
			}
			var res = arr.filter(aa);
			return res
		}

排序

		var conf = {
			compare : function(property){
				return function(a,b){
			        var value1 = a[property];
			        var value2 = b[property];
			        return value1 - value2;
			    }
			},
			sortList:function(arr,str){//數組排序
				if(Object.prototype.toString.call(arr).slice(8,-1) ==='Array'){
					if(str){
						var returnArr = arr.sort(this.compare(str));
					}else{
						var returnArr = arr.sort(this.sort(str));
					}
					
					return returnArr;
				}else{
					return arr;
				}
			},
			sort:function(arr){//數組排序
				if(Object.prototype.toString.call(arr).slice(8,-1) ==='Array'){
					var array = [];
					for(var i in arr){
						array.push(arr[i]);
					}
					for (var i = 1; i < array.length; i++) {
						var key = array[i];
						var j = i - 1;
							while (j >= 0 && array[j] > key) {
							array[j + 1] = array[j];
							j--;
						}
						array[j + 1] = key;
					}
					return array;
				}else{
					return arr;
				}
			}
		}
		

		var arr = [{a:2,b:'x2'},{a:3,b:'x3'},{a:1,b:'x1'}];
		var arr2 = [4,1,3,5,2]

		var newArr = conf.sortList(arr,'a');
		var v = conf.sortList(arr2);
		console.log(newArr)
		console.log(v)

相關推薦:

實例詳解javascript數組去重的幾種思路

Javascript數組去重的幾種方法分享

PHP實現數組去重的方法代碼

以上就是js數組去重和排序詳解的詳細內容,更多請關注php中文網其它相關文章!

 
 
[ 資訊搜索 ]  [ 加入收藏 ]  [ 告訴好友 ]  [ 打印本文 ]  [ 違規舉報 ]  [ 關閉窗口 ]

 
0條 [查看全部]  相關評論

 
網站首頁 | 關于我們 | 聯系方式 | 使用協議 | 版權隱私 | 網站地圖 | 排名推廣 | 廣告服務 | 積分換禮 | 網站留言 | RSS訂閱 | 皖ICP備2021004516號-14
企業800網 · 提供技術支持