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 相关文章推荐
基于jquery的多功能软键盘插件
Jul 25 Javascript
聊一聊JavaScript作用域和作用域链
May 03 Javascript
Node.js实现文件上传
Jul 05 Javascript
分分钟玩转Vue.js组件
Oct 25 Javascript
jQuery Validate让普通按钮触发表单验证的方法
Dec 15 Javascript
vue左侧菜单,树形图递归实现代码
Aug 24 Javascript
Nuxt.js实战和配置详解
Aug 05 Javascript
layer.open提交子页面的form和layedit文本编辑内容的方法
Sep 27 Javascript
vue实现二级导航栏效果
Oct 19 Javascript
JS sort方法基于数组对象属性值排序
Jul 10 Javascript
antd vue 刷新保留当前页面路由,保留选中菜单,保留menu选中操作
Aug 06 Javascript
vue组件暴露和.js文件暴露接口操作
Aug 11 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文件上传后端处理小技巧
2016/05/22 PHP
PHP实现对数字分隔加千分号的方法
2019/03/18 PHP
Mootools 1.2教程 函数
2009/09/15 Javascript
JQuery 应用 JQuery.groupTable.js
2010/12/15 Javascript
JS获取IP、MAC和主机名的五种方法
2013/11/14 Javascript
js对图片base64编码字符串进行解码并输出图像示例
2014/03/17 Javascript
JavaScript实现在数组中查找不同顺序排列的字符串
2014/09/26 Javascript
javascript实现 百度翻译 可折叠的分享按钮列表
2015/03/12 Javascript
jquery实现的缩略图预览滑块实例
2015/06/25 Javascript
轻量级jQuery插件slideBox实现带底栏轮播(焦点图)代码
2016/03/28 Javascript
jQuery实现多张图片上传预览(不经过后端处理)
2017/04/29 jQuery
详解Vue.js使用Swiper.js在iOS
2018/09/10 Javascript
javascript数组常见操作方法实例总结【连接、添加、删除、去重、排序等】
2019/06/13 Javascript
js实现转动骰子模型
2019/10/24 Javascript
JS实现骰子3D旋转效果
2019/10/24 Javascript
javascript数组元素删除方法delete和splice解析
2019/12/09 Javascript
React Native中ScrollView组件轮播图与ListView渲染列表组件用法实例分析
2020/01/06 Javascript
es6 for循环中let和var区别详解
2020/01/12 Javascript
JS实现容器模块左右拖动效果
2020/01/14 Javascript
JavaScript实现多层颜色选项卡嵌套
2020/09/21 Javascript
Python3安装Pymongo详细步骤
2017/05/26 Python
python正则表达式re之compile函数解析
2017/10/25 Python
tf.truncated_normal与tf.random_normal的详细用法
2018/03/05 Python
Python将字符串常量转化为变量方法总结
2019/03/17 Python
NumPy 基本切片和索引的具体使用方法
2019/04/24 Python
Python可迭代对象操作示例
2019/05/07 Python
Python实现获取系统临时目录及临时文件的方法示例
2019/06/26 Python
django 通过URL访问上传的文件方法
2019/07/28 Python
python 实现按对象传值
2019/12/26 Python
韩国著名的在线综合购物网站:Akmall
2016/08/07 全球购物
StubHub新加坡:购买和出售全球活动门票
2017/03/10 全球购物
学校出纳员岗位职责
2014/03/18 职场文书
公司应聘自荐书
2014/06/14 职场文书
个人求职意向书
2015/05/11 职场文书
如何使用分区处理MySQL的亿级数据优化
2021/06/18 MySQL
MYSQL优化之数据表碎片整理详解
2022/04/03 MySQL