哪个更快:if (var == 'value')或者if (/value/.test(var))

Which is faster: if (var == 'value' ) OR if (/value/.test(var))

本文关键字:value var if test 或者      更新时间:2023-09-26

哪个更快:

if (var == 'value')

if (/value/.test(var))

if(var == 'value')。好多了。但如果你真的想要快,做if(var === 'value')。严格等价比类型强制等价要做的工作少得多。

if (a == 'b')将比if (/b/.test(a))更快,但它们不是相同的调用。

'something' == 'some'false, /some/.test('something')true

从一个转换到另一个的唯一原因是如果另一个更合适。如果您担心速度,在担心特定的if语句之前,对脚本进行基准测试并检查瓶颈在哪里。

不是很大的速度差异,但前者绝对更具可读性,更有意义…

http://jsperf.com/string-vs-regex-test/2