JavaScript重复元素处理方法分析【统计个数、计算、去重复等】


Posted in Javascript onDecember 14, 2017

本文实例讲述了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());
Javascript 相关文章推荐
Jquery 快速构建可拖曳的购物车DragDrop
Nov 30 Javascript
JS非Alert实现网页右下角“未读信息”效果弹窗
Sep 26 Javascript
详解javascript高级定时器
Dec 31 Javascript
js H5 canvas投篮小游戏
Aug 18 Javascript
js实现String.Fomat的实例代码
Sep 02 Javascript
js实现导航吸顶效果
Feb 24 Javascript
JavaScript多线程运行库Nexus.js详解
Dec 22 Javascript
JavaScript实现数值自动增加动画
Dec 28 Javascript
jQuery中的for循环var与let的区别
Apr 21 jQuery
详解为生产环境编译Angular2应用的方法
Dec 10 Javascript
bootstrap-treeview实现多级树形菜单 后台JSON格式如何组织?
Jul 26 Javascript
JavaScript运动原理基础知识详解
Apr 02 Javascript
利用Javascript开发一个二维周视图日历
Dec 14 #Javascript
浅谈es6 javascript的map数据结构
Dec 14 #Javascript
利用Javascript实现一套自定义事件机制
Dec 14 #Javascript
vue登录注册及token验证实现代码
Dec 14 #Javascript
基于vue 实现token验证的实例代码
Dec 14 #Javascript
JavaScript实现左侧菜单效果
Dec 14 #Javascript
JavaScript实现全选取消效果
Dec 14 #Javascript
You might like
DC宇宙的第一个英雄,堪称动漫史鼻祖,如今成为美国文化的象征
2020/04/09 欧美动漫
php购物车实现代码
2011/10/10 PHP
php中的ini配置原理详解
2014/10/14 PHP
调用WordPress函数统计文章访问量及PHP原生计数器的实现
2016/03/21 PHP
laravel5使用freetds连接sql server的方法
2018/12/07 PHP
PHP正则表达式处理函数(PCRE 函数)实例小结
2019/05/09 PHP
HTML页面如何象ASP一样接受参数
2007/02/07 Javascript
js获取html文件的思路及示例
2013/09/17 Javascript
jQuery学习总结之jQuery事件
2014/06/30 Javascript
jQuery如何获取同一个类标签的所有值(默认无法获取)
2014/09/25 Javascript
alert出数组中的随即值代码
2014/09/25 Javascript
2014最热门的JavaScript代码高亮插件推荐
2014/11/25 Javascript
Bootstrap模仿起筷首页效果
2016/05/09 Javascript
JavaScript实现简单的双色球(实例讲解)
2017/07/31 Javascript
史上最全JavaScript常用的简写技巧(推荐)
2017/08/17 Javascript
node.js中使用Export和Import的方法
2017/09/18 Javascript
html中通过JS获取JSON数据并加载的方法
2017/11/30 Javascript
JavaScript数据结构与算法之检索算法示例【二分查找法、计算重复次数】
2019/02/22 Javascript
vue进入页面时滚动条始终在底部代码实例
2019/03/26 Javascript
js实现动态时钟
2020/03/12 Javascript
vue+elementUI中表格高亮或字体颜色改变操作
2020/11/02 Javascript
Vue router安装及使用方法解析
2020/12/02 Vue.js
[00:37]食人魔魔法师轮盘吉兆顺应全新至宝将拥有额外款式
2019/12/19 DOTA
python opencv 简单阈值算法的实现
2019/08/04 Python
python脚本实现音频m4a格式转成MP3格式的实例代码
2019/10/09 Python
python学习笔记之多进程
2020/08/06 Python
浅析python字符串前加r、f、u、l 的区别
2021/01/24 Python
详解通过HTML5 Canvas实现图片的平移及旋转变化的方法
2016/03/22 HTML / CSS
美体小铺波兰官方网站:The Body Shop波兰
2019/09/03 全球购物
公司培训心得体会
2014/01/03 职场文书
房屋租赁意向书
2014/04/01 职场文书
项目申报专员岗位职责
2014/07/09 职场文书
财务统计员岗位职责
2015/04/14 职场文书
创业计划书之密室逃脱
2019/11/08 职场文书
Java 在线考试云平台的实现
2021/11/23 Java/Android
浅谈MySql update会锁定哪些范围的数据
2022/06/25 MySQL