去重
var arr=[11,11,333,4,4,5,66,66,7]; // 方法一:在新数组内判断不存在时加入 var newarr1=[]; function quchong1(){ for(var i=0;i<arr.length;i++){ if(newarr1.indexOf(arr[i])==-1){ newarr1.push(arr[i]) } } console.log(newarr1) } quchong1() // 方法二:前后数组比较,若相等,跳过该数 var newarr2=[]; function quchong2(){ for(var i=0;i<arr.length;i++){ for(var j=i+1;j<arr.length;j++){ if(arr[i]==arr[j]){ j=++i } } newarr2.push(arr[i]) } return newarr2 } quchong2() console.log(newarr2) // 方法三:es6 Set自动去除重复数据 let newarray3 =[...new Set(arr)] ; console.log(newarray3); // 方法四 var a = {}, newarr4 = [] function quchong4() { for (var i = 0; i <arr.length; i++) { var arr1 = arr[i]; var d = (typeof arr1) + arr1; if (a[d] === undefined) { newarr4.push(arr1); a[d] = 1; } } } quchong4(); console.log(newarr4); // 方法五:自己与自己比较,若相等,删除该位置的数据 var newarray5=arr; for (var i = 0; i < newarray5.length; i++) { for (var j = 0; j < newarray5.length; j++) { if(i!=j){ if(newarray5[j] == newarray5[i]){ newarray5.splice(i,1) } } } } console.log(newarray5) // 方法六:indexof每次只返回第一个元素的位置, var newarray6 = arr.filter(function (element, index, arr2) { return arr2.indexOf(element) === index; }); console.log(newarray6)
去空
String.prototype.trim=function(){
return this.replace(/(^s+)|(s+$)g,'')
}
str.trim()
function trim(str){
return str.replace(/(^s+)|(s+$)/g,'')
}
trim(str)
原生数组排序
function sort(arr){
for(var i=0;i<arr.length;i++){
for(var j=i;j<arr.length;j++){
if(arr[i]>arr[j]){
var max=arr[i];
arr[i]=arr[j];
arr[j]=max;
}
}
}
}
sort([....])
数组方法排序
arr.sort(function(a,b){return a-b})
注:
a-b升序
b-a降序