zoukankan      html  css  js  c++  java
  • 由addClass衍生出来的字符串去重问题

    现在先撇开性能不谈,就算是谈性能,也是把函数循环成千上万才看到几毫秒的差距,因此我才不管它呢。我首先考虑的是类库的大小,这就要求,不要才分膨胀其里的函数。

    我在群里提出的问题是,要为一个className为"aaa eee bbb"的元素节点添加多两个类名,“aaa”,"ddd",如果让此实现尽可能的简单,不能用框架,不能用for循环。

    经过一轮的跑题(主要如何用hash进行去重,总难免还是谈到性能上),最好得到两个比较好的方案:

    方案2虽然精简,但还存在两个问题,1对b字母的区分,2不能移除空白,如碰到像 'a aa a-a a-b' 就无能为力了,希望高手能跟进。

    方案3,感谢abcd友情提供:

    var str= "aaa bbb eee aaa bbb kkk"; var reg = /(^|\s)(\S+)\s(?=(?:\S+\s)*\2(?:\s|$))/g; alert(str.replace(reg,"$1"));


    下面测试运行框,大家可以把代码放到里面进行测试。

  • 相关阅读:
    使用线程池对应用程序产生线程个数与占用CPU时间的影响
    枚举类型解析
    性能监视器的简单使用
    WCF 承载服务
    ManulResetEvent与AutoResetEvent
    获取当前目录的上级目录
    WCF 异步调用
    适配器设计模式
    控制控制台自身的最大化最小化
    代码自动生成技术相关介绍
  • 原文地址:https://www.cnblogs.com/rubylouvre/p/1946397.html
Copyright © 2011-2022 走看看