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 相关文章推荐
通过继承IHttpHandle实现JS插件的组织与管理
Jul 13 Javascript
jquery.validate的使用说明介绍
Nov 12 Javascript
javascript检测浏览器的缩放状态实现代码
Sep 28 Javascript
有关json_decode乱码及NULL的问题
Oct 13 Javascript
JS运动相关知识点小结(附弹性运动示例)
Jan 08 Javascript
js删除数组元素、清空数组的简单方法(必看)
Jul 27 Javascript
HTML5 canvas 9绘制图片实例详解
Sep 06 Javascript
浅谈react.js中实现tab吸顶效果的问题
Sep 06 Javascript
详解vue通过NGINX部署在子目录或者二级目录实践
Sep 03 Javascript
微信小程序使用echarts获取数据并生成折线图
Oct 16 Javascript
JavaScript实现拖拽盒子效果
Feb 06 Javascript
JavaScript如何实现防止重复的网络请求的示例
Jan 28 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 删除无限级目录与文件代码共享
2008/11/22 PHP
php旋转图片90度的方法
2013/11/07 PHP
thinkPHP连接sqlite3数据库的实现方法(附Thinkphp代码生成器下载)
2016/05/27 PHP
php文件上传 你真的掌握了吗
2016/11/28 PHP
Javascript 遮罩层和加载效果代码
2013/08/01 Javascript
JS比较两个时间大小的简单示例代码
2013/12/20 Javascript
jQuery点击自身以外地方关闭弹出层的简单实例
2013/12/24 Javascript
jquery 字符串切割函数substring的用法说明
2014/02/11 Javascript
JavaScript中的ubound函数使用实例
2014/11/04 Javascript
JS模拟并美化的表单控件完整实例
2015/08/19 Javascript
JS实现网页游戏中滑块响应鼠标点击移动效果
2015/10/19 Javascript
JS HTML5拖拽上传图片预览
2016/07/18 Javascript
JavaScript设计模式之单体模式全面解析
2016/09/09 Javascript
React-Native做一个文本输入框组件的实现代码
2017/08/10 Javascript
对vux点击事件的优化详解
2018/08/28 Javascript
jQuery each和js forEach用法比较
2019/02/27 jQuery
Node.js 获取微信JS-SDK CONFIG的方法示例
2019/05/21 Javascript
对layui初始化列表的CheckBox属性详解
2019/09/13 Javascript
JS数组转字符串实现方法解析
2020/09/04 Javascript
详解nginx配置vue h5 history去除#号
2020/11/09 Javascript
小程序角标的添加及绑定购物车数量进行实时更新的实现代码
2020/12/07 Javascript
Js实现粘贴上传图片的原理及示例
2020/12/09 Javascript
[48:11]完美世界DOTA2联赛 Magma vs GXR 第二场 11.07
2020/11/10 DOTA
恢复百度云盘本地误删的文件脚本(简单方法)
2017/10/21 Python
Python cookbook(数据结构与算法)根据字段将记录分组操作示例
2018/03/19 Python
selenium3+python3环境搭建教程图解
2018/12/07 Python
Python爬虫爬取煎蛋网图片代码实例
2019/12/16 Python
pytorch之Resize()函数具体使用详解
2020/02/27 Python
Gap工厂店:Gap Factory
2017/11/02 全球购物
日语求职信范文
2013/12/17 职场文书
教师评语大全
2014/04/28 职场文书
2014医学院领导班子对照检查材料思想汇报
2014/09/19 职场文书
党员个人党性分析材料
2014/12/18 职场文书
小学四年级作文之人物作文
2019/11/06 职场文书
vue引入Excel表格插件的方法
2021/04/28 Vue.js
「女孩的钓鱼慢活」全新版权绘公布
2022/03/21 日漫