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 相关文章推荐
js不是基础的基础
Dec 24 Javascript
随鼠标上下滚动的jquery代码
Dec 05 Javascript
jQuery.extend()、jQuery.fn.extend()扩展方法示例详解
May 08 Javascript
浅析基于WEB前端页面的页面内容搜索的实现思路
Jun 10 Javascript
JS通过ajax动态读取xml文件内容的方法
Mar 24 Javascript
JS简单实现tab切换效果的多窗口显示功能
Sep 07 Javascript
纯JS焦点图特效实例(可一个页面多用)
Dec 07 Javascript
微信小程序 es6-promise.js封装请求与处理异步进程
Jun 12 Javascript
vuejs使用axios异步访问时用get和post的实例讲解
Aug 09 Javascript
jQuery AJAX与jQuery事件的分析讲解
Feb 18 jQuery
vue使用video.js进行视频播放功能
Jul 18 Javascript
AutoJs实现刷宝短视频的思路详解
May 22 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 UTF8 文件的签名问题
2009/10/30 PHP
php一次性删除前台checkbox多选内容的方法
2013/09/22 PHP
关于PHP中协程和阻塞的一些理解与思考
2017/08/11 PHP
PHP操作Redis常用技巧总结
2018/04/24 PHP
PHP中__set()实例用法和基础讲解
2019/07/23 PHP
js 事件处理函数间的Event物件是否全等
2011/04/08 Javascript
JS实现模仿微博发布效果实例代码
2013/12/16 Javascript
javascript中match函数的用法小结
2014/02/08 Javascript
js获取指定的cookie的具体实现
2014/02/20 Javascript
jQuery控制TR显示隐藏的几种方法
2014/06/18 Javascript
js实现新浪微博首页效果
2015/10/16 Javascript
js document.getElementsByClassName的使用介绍与自定义函数
2016/11/25 Javascript
基于JavaScript实现窗口拖动效果
2017/01/18 Javascript
js每隔两秒输出数组中的一项(实例)
2017/05/28 Javascript
Angular整合zTree的示例代码
2018/01/24 Javascript
JavaScript设计模式之工厂模式简单实例教程
2018/07/03 Javascript
Vue路由history模式解决404问题的几种方法
2018/09/29 Javascript
[46:57]EG vs Winstrike 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
在GitHub Pages上使用Pelican搭建博客的教程
2015/04/25 Python
详解Python中time()方法的使用的教程
2015/05/22 Python
利用Python如何生成随机密码
2016/04/20 Python
python读写json文件的简单实现
2017/04/11 Python
python pandas 对series和dataframe的重置索引reindex方法
2018/06/07 Python
Django框架的使用教程路由请求响应的方法
2018/07/03 Python
django使用F方法更新一个对象多个对象字段的实现
2020/03/28 Python
HTML5 客户端数据库简易使用:IndexedDB
2019/12/19 HTML / CSS
Luxplus丹麦:香水和个人护理折扣
2018/04/23 全球购物
亚洲最大的眼镜批发商和零售商之一:Glasseslit
2018/10/08 全球购物
联想C++笔试题
2012/06/13 面试题
材料加工硕士生求职信
2013/10/10 职场文书
给领导的检讨书
2014/02/16 职场文书
2014年招商工作总结
2014/11/22 职场文书
2016年第二十届“母亲节暨幸福工程救助贫困母亲活动日”活动总结
2016/04/06 职场文书
SqlServer 垂直分表(减少程序改动)
2021/04/16 SQL Server
MySQL系列之十 MySQL事务隔离实现并发控制
2021/07/02 MySQL
mysql的Buffer Pool存储及原理
2022/04/02 MySQL