首頁 > web前端 > js教程 > JavaScript重複元素處理方法分析【統計數字、計算、去重複等】_javascript技巧

JavaScript重複元素處理方法分析【統計數字、計算、去重複等】_javascript技巧

韦小宝
發布: 2017-12-15 13:57:53
原創
1406 人瀏覽過

這篇文章主要介紹了JavaScript重複元素處理方法,結合實例形式分析了javascript針對字串、陣列中重複元素的個數統計,計算及去重複等相關操作技巧,對JavaScript有興趣的朋友可以參考下

本文實例講述了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 = &#39;112332454678&#39;;
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

以上就是這篇文章的所有內容,希望可以給大家帶來幫助! !

相關推薦:

基於javascript 明確轉換與隱含轉換(詳解)_javascript技巧

JavaScript門面模式詳解

Javascript中的作用域及區塊級作用域#

以上是JavaScript重複元素處理方法分析【統計數字、計算、去重複等】_javascript技巧的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板