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"));


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

  • 相关阅读:
    opencv环境的搭建,并打开一个本地PC摄像头。
    HDU ACM 4578 Transformation->段树-间隔的变化
    要毕业季
    netperf 而网络性能测量
    应用程序启动速度的优化
    Codeforces Round #264 (Div. 2) C Gargari and Bishops 【暴力】
    firefox os 2.0版模拟器QQ初体验
    DOMContentLoaded和window.onload
    HTML5管理与实际历史的分析(history物)
    Matlab Error (Matrix dimensions must agree)
  • 原文地址:https://www.cnblogs.com/rubylouvre/p/1946397.html
Copyright © 2011-2022 走看看