Skip to content

惰性匹配是否效率更低 #9

@lj0812

Description

@lj0812

测试了一下1.5.5匹配id中的2个例子,结果是:/id=".*?"/的方式要比/id="[^"]*"/性能更好 (Testing in Chrome 78.0.3904 / Mac OS X 10.15.1)

var count = 10000
console.time('惰性方式')
for (let i = 0; i < count; i++) {
  var regex = /id=".*?"/g
  var string = '<div id="container" class="main"></div>'
  var result = string.match(regex)
}
console.timeEnd('惰性方式')

// 惰性方式: 3.819091796875ms
var count = 10000
console.time('非惰性方式')
for (let i = 0; i < count; i++) {
  var regex = /id="[^"]*"/g
  var string = '<div id="container" class="main"></div>'
  var result = string.match(regex)
}
console.timeEnd('非惰性方式')

// 非惰性方式: 6.54296875ms

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions