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 相关文章推荐
xml和web特殊字符
Apr 28 Javascript
使用HTML+CSS+JS制作简单的网页菜单界面
Jul 27 Javascript
js调用百度地图及调用百度地图的搜索功能
Sep 07 Javascript
利用bootstrapValidator验证UEditor
Sep 14 Javascript
JS插件plupload.js实现多图上传并显示进度条
Nov 29 Javascript
基于jQuery实现的幻灯图片切换
Dec 02 Javascript
js弹性势能动画之抛物线运动实例详解
Jul 27 Javascript
layui 监听表格复选框选中值的方法
Aug 15 Javascript
详解mpvue scroll-view自动回弹bug解决方案
Oct 01 Javascript
angular6 利用 ngContentOutlet 实现组件位置交换(重排)
Nov 02 Javascript
Echart折线图手柄触发事件示例详解
Dec 16 Javascript
JavaScript实现图片放大预览效果
Nov 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
PHP中使用Imagick读取pdf并生成png缩略图实例
2015/01/21 PHP
学习php设计模式 php实现享元模式(flyweight)
2015/12/07 PHP
Laravel配合jwt使用的方法实例
2020/10/25 PHP
使用js实现一个可编辑的select下拉列表
2014/02/20 Javascript
浅析Node在构建超媒体API中的作用
2014/07/30 Javascript
jquery实现一个简单好用的弹出框
2014/09/26 Javascript
nodejs爬虫抓取数据乱码问题总结
2015/07/03 NodeJs
JS实现浏览器状态栏显示时间的方法
2015/10/27 Javascript
详解JavaScript异步编程中jQuery的promise对象的作用
2016/05/03 Javascript
微信小程序 action-sheet 反馈上拉菜单简单实例
2017/05/11 Javascript
Angular在模板驱动表单中自定义校验器的方法
2017/08/09 Javascript
老生常谈javascript的面向对象思想
2017/08/22 Javascript
vue购物车插件编写代码
2017/11/27 Javascript
vue.js中created方法作用
2018/03/30 Javascript
微信小程序如何自定义table组件
2019/06/29 Javascript
重置Redux的状态数据的方法实现
2019/11/18 Javascript
JS实现网页烟花动画效果
2020/03/10 Javascript
微信小程序学习总结(三)条件、模板、文件引用实例分析
2020/06/04 Javascript
详解JS深拷贝与浅拷贝
2020/08/04 Javascript
使用Pyrex来扩展和加速Python程序的教程
2015/04/13 Python
简单分析Python中用fork()函数生成的子进程
2015/05/04 Python
Python优化技巧之利用ctypes提高执行速度
2016/09/11 Python
python 删除指定时间间隔之前的文件实例
2018/04/24 Python
python标记语句块使用方法总结
2019/08/05 Python
python中的列表与元组的使用
2019/08/08 Python
Python多重继承之菱形继承的实例详解
2020/02/12 Python
Python 读取xml数据,cv2裁剪图片实例
2020/03/10 Python
Selenium使用Chrome模拟手机浏览器方法解析
2020/04/10 Python
将SVG图引入到HTML页面的实现
2019/09/20 HTML / CSS
绘画设计学生的个人自我评价
2013/09/20 职场文书
4s店机修工岗位职责
2013/12/20 职场文书
电台实习生求职信
2014/02/25 职场文书
银行主办会计岗位职责
2014/08/13 职场文书
致800米运动员广播稿(10篇)
2014/10/17 职场文书
前台岗位职责
2015/02/13 职场文书
基于python定位棋子位置及识别棋子颜色
2021/07/26 Python