[].forEach.call($$("*"),function(a){ a.style.outline="1px solid #"+(~~(Math.random()*(1<<24))).toString(16) })


問問你自己,看得懂這行代碼嗎?要是看不懂就點擊進來看看吧,要是看的懂得話,可以繞路

1.call:call(thisObj,arg1,arg2,arg3)

[].forEach.call($$("*"),

  就是用$$('a')來替代[],

好 那么到了第二個問題$$('a')是什么意思

2.

$$('a')

你可以在自己的瀏覽器上面運行一下,就是頁面上所有的a標簽

然后再繼續

3.

function(a){}

無疑就是$$('a')組成的數組要進行的回調函數了

好我們再看里面的東西

4.~~

看在瀏覽器上面的運行

var a=12.233
~~a
12


var b=-123.455
~~b
-123

  所以~~的作用就相當於parseInt

5.1<<24

也就是1向左移24位

也就是2的24次方

6.toString(16)

就是把數字轉換成16進制的字符串

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM