哪个更快:
if (var == 'value')
或
if (/value/.test(var))
答案 0 :(得分:8)
if(var == 'value')
。很多。但如果你真的想要快,请if(var === 'value')
。与类型强制等效相比,严格等效的工作要少得多。
答案 1 :(得分:6)
if (a == 'b')
会比if (/b/.test(a))
更快,但它们不是相同的电话。
'something' == 'some'
为false
,而/some/.test('something')
为true
。
如果对方更合适,唯一的理由是从一个改为另一个。如果您担心速度,请先对脚本进行基准测试,然后检查瓶颈在哪里,然后再担心特定的if
声明。
答案 2 :(得分:1)
不是一个巨大的速度差异,但前者肯定更具可读性,更有意义......