在某技術群看到 A君 提出的如下一個問題:
A君
6個DIV 間隔一秒 輪番進行奇偶顯示. 比如先135 一秒後 246 然後再135 循環
A君
要求代碼短小精悍
B君
復制代碼 代碼如下:
var a = document.getElementsByTagName('div');
var b = false;
setInterval(function() {
for (var i = 0; i < 6; i++)
a[i].style.display = ((i & 1) ^ b) ? 'block' : 'none';
b = !b;
}, 1000);
A君
D君這個效率不錯啊
我這個不如abcd的簡潔
復制代碼 代碼如下:
j++; for (var i = 0; i < 6; i++) o[i].style.display = [['block', 'none'], ['none', 'block']][j & 1][i & 1];
D君
用數組,也影響效率
看完不得感歎 D君 的方法真的很好,如果是我真的想不出如此高效率的方法。