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 相关文章推荐
JavaScript 高效运行代码分析
Mar 18 Javascript
通过DOM脚本去设置样式信息
Sep 19 Javascript
通过一段代码简单说js中的this的使用
Jul 23 Javascript
javascript简单实现表格行间隔显示颜色并高亮显示
Nov 29 Javascript
js实现iframe框架取值的方法(兼容IE,firefox,chrome等)
Nov 26 Javascript
jQuery 常用代码集锦(必看篇)
May 16 Javascript
echarts3 使用总结(绘制各种图表,地图)
Jan 05 Javascript
微信小程序使用input组件实现密码框功能【附源码下载】
Dec 11 Javascript
快速搭建vue2.0+boostrap项目的方法
Apr 09 Javascript
vue+高德地图写地图选址组件的方法
May 18 Javascript
js实现无限瀑布流实例方法
Sep 16 Javascript
element-ui封装一个Table模板组件的示例
Jan 04 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
PHP读取RSS(Feed)简单实例
2014/06/12 PHP
PHP实现原比例生成缩略图的方法
2016/02/03 PHP
php实用代码片段整理
2016/11/12 PHP
php面试实现反射注入的详细方法
2019/09/30 PHP
laravel框架中表单请求类型和CSRF防护实例分析
2019/11/23 PHP
解决PHP Opcache 缓存刷新、代码重载出现无法更新代码的问题
2020/08/24 PHP
另类调用flash无须激活的方法
2006/12/27 Javascript
jquery制作搜狐快站页面效果示例分享
2014/02/21 Javascript
js关于命名空间的函数实例
2015/02/05 Javascript
javascript中递归函数用法注意点
2015/07/30 Javascript
由简入繁实现Jquery树状结构的方法(推荐)
2016/06/10 Javascript
利用yarn代替npm管理前端项目模块依赖的方法详解
2017/09/04 Javascript
Vue Element使用icon图标教程详解(第三方)
2018/02/07 Javascript
Spring Boot/VUE中路由传递参数的实现代码
2018/03/02 Javascript
Node.js console控制台简单用法分析
2019/01/04 Javascript
一个基于flask的web应用诞生(1)
2017/04/11 Python
python脚本生成caffe train_list.txt的方法
2018/04/27 Python
python实现超级玛丽游戏
2020/03/18 Python
解决python脚本中error: unrecognized arguments: True错误
2020/04/20 Python
Node.js 和 Python之间该选择哪个?
2020/08/05 Python
使用jTopo给Html5 Canva中绘制的元素添加鼠标事件
2014/05/15 HTML / CSS
Hotels.com中国区:好订网
2016/08/18 全球购物
中国专业的音频分享平台:喜马拉雅
2019/05/24 全球购物
澳大利亚领先的在线药房:Pharmacy Online(有中文站)
2020/02/22 全球购物
香港零食网购:上仓胃子
2020/06/08 全球购物
毕业生文员求职信
2013/11/03 职场文书
实习自我鉴定
2013/12/15 职场文书
大学自我鉴定范文
2013/12/26 职场文书
澳大利亚商务邀请函
2014/01/17 职场文书
中学生期末评语
2014/02/03 职场文书
财务总监管理职责范文
2014/03/09 职场文书
2014预备党员党课学习心得范文
2014/07/08 职场文书
竞选班长演讲稿500字
2014/08/22 职场文书
个人公司授权委托书范本
2014/10/12 职场文书
小石潭记导游词
2015/02/03 职场文书
大学生入党自传2015
2015/06/26 职场文书