JavaScript实现找出字符串中第一个不重复的字符


Posted in Javascript onSeptember 03, 2014

此算法仅供参考,小菜基本不懂高深的算法,只能用最朴实的思想去表达。

//找出字符串中第一个不重复的字符
// firstUniqueChar("vdctdvc"); --> t
function firstUniqueChar(str){
var str = str || "",
i = 0,
k = "",
_char = "",
charMap = {},
result = {name: "",index: str.length};

for(i=0;i<str.length;i++){
_char = str.charAt(i);
if(charMap[_char] != undefined){
charMap[_char] = -1;
}else{
charMap[_char] = i;
}
}

for(k in charMap){
if(charMap[k]<0){
continue;
}
if(result.index>charMap[k]){
result.index = charMap[k];
result.name = k;
}
}

return result.name;
}
Javascript 相关文章推荐
JavaScript 事件参考手册
Dec 24 Javascript
JavaScript 全面解析各种浏览器网页中的JS 执行顺序
Feb 17 Javascript
Javascript 学习笔记 错误处理
Jul 30 Javascript
js兼容的placeholder属性详解
Aug 18 Javascript
Js查找字符串中出现次数最多的字符及个数实例解析
Sep 05 Javascript
js+css3制作时钟特效
Oct 16 Javascript
vue.js单页面应用实例的简单实现
Apr 10 Javascript
jQuery插件开发发送短信倒计时功能代码
May 09 jQuery
bootstrap confirmation按钮提示组件使用详解
Aug 22 Javascript
JavaScript编写棋盘覆盖代码详解
Aug 28 Javascript
解析vue路由异步组件和懒加载案例
Jun 08 Javascript
fastadmin中调用js的方法
May 14 Javascript
Egret引擎开发指南之编译项目
Sep 03 #Javascript
js和jquery中循环的退出和继续下一个循环
Sep 03 #Javascript
Egret引擎开发指南之创建项目
Sep 03 #Javascript
Mac OS X 系统下安装和部署Egret引擎开发环境
Sep 03 #Javascript
Windows8下搭建Node.js开发环境教程
Sep 03 #Javascript
javascript常见操作汇总
Sep 03 #Javascript
优化Node.js Web应用运行速度的10个技巧
Sep 03 #Javascript
You might like
PHP生成自定义长度随机字符串的函数分享
2014/05/04 PHP
ThinkPHP3.2.3框架Memcache缓存使用方法实例总结
2019/04/15 PHP
PHP面向对象程序设计子类扩展父类(子类重新载入父类)操作详解
2019/06/14 PHP
JS测试显示屏分辨率以及屏幕尺寸的方法
2013/11/22 Javascript
原生JavaScript生成GUID的实现示例
2014/09/05 Javascript
javascript使用smipleChart实现简单图表
2015/01/02 Javascript
javascript常用正则表达式汇总
2015/07/31 Javascript
jQuery实现鼠标经过时出现隐藏层文字链接的方法
2015/10/12 Javascript
jquery+css实现动感的图片切换效果
2015/11/25 Javascript
BootStrap智能表单实战系列(八)表单配置json详解
2016/06/13 Javascript
js replace(a,b)之替换字符串中所有指定字符的方法
2016/08/17 Javascript
浅析script标签中的defer与async属性
2016/11/30 Javascript
js实现登录验证码
2016/12/22 Javascript
使用Javascript判断浏览器终端设备(PC、IOS(iphone)、Android)
2017/01/04 Javascript
BootStrap模态框不垂直居中的解决方法
2017/10/19 Javascript
javascript将json格式数组下载为excel表格的方法
2017/12/22 Javascript
vue 动态修改a标签的样式的方法
2018/01/18 Javascript
react-router4 配合webpack require.ensure 实现异步加载的示例
2018/01/18 Javascript
AngularJS基于http请求实现下载php生成的excel文件功能示例
2018/01/23 Javascript
简单了解小程序+node梳理登陆流程
2019/06/24 Javascript
Python使用Phantomjs截屏网页的方法
2018/05/17 Python
django与小程序实现登录验证功能的示例代码
2019/02/19 Python
Python3.6+Django2.0以上 xadmin站点的配置和使用教程图解
2019/06/04 Python
python如何实现从视频中提取每秒图片
2020/10/22 Python
Pyecharts绘制全球流向图的示例代码
2020/01/08 Python
python修改微信和支付宝步数的示例代码
2020/10/12 Python
HTML5 Web Workers之网站也能多线程的实现
2013/04/24 HTML / CSS
日本化妆品植村秀俄罗斯官方网站:Shu Uemura俄罗斯
2020/02/01 全球购物
澳大利亚最受欢迎的女士度假服装:Kabana Shop
2020/10/10 全球购物
一套软件测试笔试题
2014/07/25 面试题
css animation配合SVG制作能量流动效果
2021/03/24 HTML / CSS
劳资协议书范本
2014/04/23 职场文书
授权委托书范本(单位)
2014/09/28 职场文书
2014年小学教师工作总结
2014/11/10 职场文书
三傻大闹宝莱坞观后感
2015/06/03 职场文书
2015年幼儿园国庆节活动总结
2015/07/30 职场文书