高性能Javascript第五章字符串和正则表达式

笔记:

  1. regular expression. regex
  2. 字符串连接通常通过一个循环
  3. str+="one"+"two"
    过程:在内存中存储一个临时字符串,连接后的字符串onetwo被赋值给该字符串,临时字符串与str当前的值相连接,结果赋值给str
  4. 赋值表达式由str开始作为基础。
  5. 数组项合并 Array.prototype.join
  6. String.prototype.concat
  7. 正则表达式的工作原理:编译,设置起始位置,匹配每个正则表达字元,匹配成功或者失败。
  8. 提高正则表达式效率的方法:关注如何使匹配更快失败,正则表达式以简单必须的字元开始,使用量词模式使得后面的字元互斥,减少分支数量缩小分支范围,使用非捕获组,只捕获感兴趣的文本以减少后处理,暴露必需的字元,使用合适的量词,把正则表达式赋值给变量并使用它们,化繁为简。
  9. 去除字符串首尾空白,trim
  10. 不使用正则:
  11.  混合使用方法:

小结:

  1. IE7前,数组项合并性能最合理
  2. IE后,数组项合并最慢,推荐使用+ ,+=避免不必要的中间字符串。
  3. 回溯是正则表达式匹配的基本组成部分,也是低效之源。
  4. 去除首尾空白,正则去头,另一个indexof尾巴向前搜素,结合。

猜你喜欢

转载自blog.csdn.net/qq_37021554/article/details/88042933
今日推荐