JavaScript 중복 요소 처리 방법 분석[통계 개수,계산,중복 제거 등]

이 글 의 실례 는 자 바스 크 립 트 중복 요소 처리 방법 을 서술 하 였 다.여러분 께 참고 하도록 공유 하 겠 습 니 다.구체 적 으로 는 다음 과 같 습 니 다.
문자열 에 가장 많이 나타 난 문 자 를 판단 하여 이 횟수 를 집계 합 니 다.

//            hash table ,key   ,value          
var str = "abcdefgaddda";
var obj = {};
for (var i = 0, l = str.length; i < l; i++) {
  var key = str[i];
  if (!obj[key]) {
   obj[key] = 1;
  } else {
   obj[key]++;
  }
}
/*    hash table,  value   key value*/
var max = -1;
var max_key = "";
var key;
for (key in obj) {
  if (max < obj[key]) {
   max = obj[key];
   max_key = key;
  }
}
alert("max:"+max+" max_key:"+max_key);

문자열 의 바이트 길 이 를 구 하 는 방법 을 만 듭 니 다.
가설:
하나의 영문 문 자 는 하나의 바이트 를 차지 하고,하나의 중국어 문 자 는 두 개의 바이트 를 차지한다.

function GetBytes(str){
  var len = str.length;
  var bytes = len;
  for(var i=0; i<len; i++){
    if (str.charCodeAt(i) > 255) bytes++;
  }
  return bytes;
}
alert(GetBytes("  ,as"));

배열 의 중복 요 소 를 제거 하 는 방법 을 만 듭 니 다.

var arr = [1 ,1 ,2, 3, 3, 2, 1];
Array.prototype.unique = function(){
  var ret = [];
  var o = {};
  var len = this.length;
  for (var i=0; i<len; i++){
    var v = this[i];
    if (!o[v]){
      o[v] = 1;
      ret.push(v);
    }
  }
  return ret;
};
alert(arr.unique());

문자열 의 모든 중복 요 소 를 제거 하 는 방법 을 만 듭 니 다.

var arr = '112332454678';
String.prototype.unique = function(){
  var ret = [];
  var o = {};
  var len = this.length;
  for (var i=0; i<len; i++){
    var v = this[i];
    if (!o[v]){
      o[v] = 1;
    } else {
      o[v] = 2;
    }
  }
  for(var k in o){
    if (o[k]==1) {
      ret.push(k);
    };
  }
  return ret;
};
alert(arr.unique());

PS:여기 서 몇 가지 중복 도 구 를 제공 하여 참고 하여 사용 할 수 있 습 니 다.
온라인 중복 제거 도구:
http://tools.jb51.net/code/quchong
온라인 텍스트 중복 도구:
http://tools.jb51.net/aideddesign/txt_quchong
자 바스 크 립 트 관련 내용 에 관심 이 있 는 독자 들 은 본 사이트 의 주 제 를 볼 수 있다.
본 고 에서 말 한 것 이 여러분 의 자 바스 크 립 트 프로 그래 밍 에 도움 이 되 기 를 바 랍 니 다.

좋은 웹페이지 즐겨찾기