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 相关文章推荐
在textarea中显示html页面的javascript代码
Apr 20 Javascript
JS 控制非法字符的输入代码
Dec 04 Javascript
js Dialog 实践分享
Oct 22 Javascript
Js动态添加复选框Checkbox的实例方法
Apr 08 Javascript
JS操作JSON要领详细总结
Aug 25 Javascript
javascript断点调试心得分享
Apr 23 Javascript
JavaScript必知必会(五) eval 的使用
Jun 08 Javascript
微信小程序实现的贪吃蛇游戏【附源码下载】
Jan 03 Javascript
jQuery点击页面其他部分隐藏下拉菜单功能
Nov 27 jQuery
vue实现分页组件
Jun 16 Javascript
JS实现带阴历的日历功能详解
Jan 24 Javascript
JS中数组实现代码(倒序遍历数组,数组连接字符串)
Dec 29 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快速统计某个数据库中每张表的数据量
2012/09/04 PHP
php实现的树形结构数据存取类实例
2014/11/29 PHP
Laravel学习教程之model validation的使用示例
2017/10/23 PHP
javascript的console.log()用法小结
2012/05/31 Javascript
JavaScript 命名空间 使用介绍
2013/08/29 Javascript
利用javaScript实现点击输入框弹出窗体选择信息
2013/12/11 Javascript
js正则匹配出所有图片及图片地址src的方法
2015/06/08 Javascript
解决JavaScript数字精度丢失问题的方法
2015/12/03 Javascript
Google 地图API资料整理及详细介绍
2016/08/06 Javascript
js判断所有表单项不为空则提交表单的实现方法
2016/09/09 Javascript
JavaScript简单下拉菜单特效
2016/09/13 Javascript
12306 刷票脚本及稳固刷票脚本(防挂)
2017/01/04 Javascript
详解百度百科目录导航树小插件
2017/01/08 Javascript
jQuery为DOM动态追加事件的方法
2017/02/16 Javascript
Node.js 的模块知识汇总
2017/08/16 Javascript
node打造微信个人号机器人的方法示例
2018/04/26 Javascript
Vue 3.x+axios跨域方案的踩坑指南
2019/07/04 Javascript
Layui实现带查询条件的分页
2019/07/27 Javascript
JavaScript设计模式之门面模式原理与实现方法分析
2020/03/09 Javascript
javascript中innerHTML 获取或替换html内容的实现代码
2020/03/17 Javascript
JavaScript实现捕获鼠标坐标
2020/04/12 Javascript
Vue+Element ui 根据后台返回数据设置动态表头操作
2020/09/21 Javascript
[01:02]DOTA2辉夜杯决赛日 CDEC.Y对阵VG赛前花絮
2015/12/27 DOTA
机器学习的框架偏向于Python的13个原因
2017/12/07 Python
基于树莓派的语音对话机器人
2019/06/17 Python
python频繁写入文件时提速的方法
2019/06/26 Python
在pytorch中对非叶节点的变量计算梯度实例
2020/01/10 Python
python重要函数eval多种用法解析
2020/01/14 Python
零基础学python应该从哪里入手
2020/08/11 Python
HTML5实现文件断点续传的方法
2017/01/04 HTML / CSS
美国在线医疗分销商:MedEx Supply
2020/02/04 全球购物
2014年图书馆工作总结
2014/11/25 职场文书
2014年帮扶工作总结
2014/11/26 职场文书
开会通知短信大全
2015/04/20 职场文书
物业管理交接协议书
2016/03/24 职场文书
Python如何把不同类型数据的json序列化
2021/04/30 Python