1. 程式人生 > >原生JS去重

原生JS去重

obj console ont function UNC 結束 con HA eof

方式一:

function deleteRepetionChar(arr){
//先判斷輸入進來的是數組對象還是字符串
if( typeof arr == "object"){
var arr = arr;
}
else if( typeof arr == "string"){
//字符串轉為數組
var arr = arr.split(",")
}
//存放不相同的數據
var box = [];//存放去重數據
var thisArr;//當前的值arr[i]
//遍歷數組
for (var i = 0; i < arr.length; i++) {
  thisArr = arr[i]
  //定義一個旗子,檢查是不是有重復的字符
  var flag = true;

  //遍歷存放數據盒子,檢查是否等於當前元素
  //數據盒子中的數據是當前元素前面的元素
  for (var j = 0; j < box.length; j++) {
    //如果值存在
    if(box[j]==thisArr){
      flag = false;
      break;
    //結束for循環
    }
  }
  if(flag==false){
  //continue返回執行函數而不壓入數組
    continue ;
  }
  box.push(thisArr);
}
  return box;

方式二:

function deleteRepetion(arr){
  
var arrTable = {},arrData = [];   for (var i = 0; i < arr.length; i++) {     if( !arrTable[ arr[i] ]){//檢測一個對象中是否有arr[i]       arrTable[ arr[i] ] = true;       arrData.push(arr[i])     }   }   return arrData; } var arr=[1,1,2,3,2,1]; console.log(deleteRepetion(arr))



原生JS去重