以下哪项更快?

时间:2011-08-14 01:29:31

标签: javascript

以下哪项更快?顺便说一下,你个人更喜欢哪种? (位置变量存储DIV元素的CSS位置。)

1)

if (/(relative|absolute|fixed)/).test(position) { ... }

2)

if (!(/^s/).test(position)) { ... }

第3)

if (position == 'relative' || position == 'absolute' || position == 'fixed') { ... }

4)

if (position === 'relative' || position === 'absolute' || position === 'fixed') { ... }

5)

if (position != 'static') { ... }

6)

if (position !== 'static') { ... }

2 个答案:

答案 0 :(得分:3)

http://jsperf.com/

上尝试自己

答案 1 :(得分:0)

5或6

正则表达式的时间复杂度为O(mn)。 3)和4)每个需要3次检查。

无论如何,你应该在每次1000左右的时间内完成一个循环并为它们计时,这样你就可以在你的平台上获得一些实验证据。