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

 更新时间:2014年12月29日 14:26:14   投稿:hebedich  
这篇文章主要介绍了JavaScript实现查找字符串中第一个不重复的字符,需要的朋友可以参考下

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

复制代码 代码如下:

 //找出字符串中第一个不重复的字符
 // 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;
 }

小伙伴们如有更好的思路,还请告之一下,不胜感激

相关文章

  • 小程序开发实现access_token统一管理

    小程序开发实现access_token统一管理

    本文主要介绍了小程序开发实现access_token统一管理,文中通过示例代码介绍的非常详细,需要的朋友们下面随着小编来一起学习学习吧
    2021-07-07
  • 微信小程序支付功能完整流程记录(前端)

    微信小程序支付功能完整流程记录(前端)

    微信小程序的商户系统一般是以接口的形式开发的,小程序通过调用与后端约定好的接口进行参数的传递以及数据的接收,下面这篇文章主要给大家介绍了关于微信小程序支付功能(前端)的相关资料,需要的朋友可以参考下
    2023-02-02
  • 移动端touch拖动和click事件冲突问题解决

    移动端touch拖动和click事件冲突问题解决

    这篇文章主要为大家介绍了移动端touch拖动和click事件冲突问题解决,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-09-09
  • JS实现点击Radio动态更新table数据

    JS实现点击Radio动态更新table数据

    这篇文章主要介绍了JS实现点击Radio动态更新table数据的相关资料,需要的朋友可以参考下
    2017-07-07
  • 微信小程序实现简单搜索框

    微信小程序实现简单搜索框

    这篇文章主要为大家详细介绍了微信小程序实现简单搜索框,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-09-09
  • js类型转换与引用类型详解(Boolean_Number_String)

    js类型转换与引用类型详解(Boolean_Number_String)

    本篇文章主要是对js中的类型转换与引用类型(Boolean_Number_String)进行了详细的介绍,需要的朋友可以过来参考下,希望对大家有所帮助
    2014-03-03
  • webpack-cli在webpack打包中的作用小结

    webpack-cli在webpack打包中的作用小结

    webpack 是打包代码时依赖的核心内容,而 webpack-cli 是一个用来在命令行中运行 webpack 的工具,那么webpack-cli在webpack打包中的作用是什么,本文就详细的介绍一下,感兴趣的可以了解一下
    2022-04-04
  • JavaScript中定义函数的三种方法

    JavaScript中定义函数的三种方法

    这篇文章主要介绍了JavaScript中定义函数的三种方法,本文直接给出代码实现,同时给出了构造函数的相关知识,需要的朋友可以参考下
    2015-03-03
  • 8个有意思的JavaScript面试题

    8个有意思的JavaScript面试题

    JavaScript 是一种有趣的语言,我们都喜欢它,因为它的性质。这篇文章主要介绍了8个有意思的JavaScript面试题 ,需要的朋友可以参考下
    2019-07-07
  • Babylon使用麦克风并处理常见问题解决

    Babylon使用麦克风并处理常见问题解决

    这篇文章主要为大家介绍了Babylon使用麦克风并处理常见问题解决,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-04-04

最新评论