1

現在の Google Doodle のマークアップは次のようになります。

<img alt="84. Geburtstag von Shakuntala Devi" border="0" height="162" src="/logos/doodles/2013/shakuntala-devis-84th-birthday-5315657683959808-hp.gif" title="84. Geburtstag von Shakuntala Devi" width="700" id="hplogo" onload="window.lol&amp;&amp;lol()" style="padding-top:45px">

興味深い部分は onload=" window.lol&&lol() "です

好奇心から: window.functionname&&functionname()は実際に何をしますか? 関数を呼び出さないのはなぜですか?何かメリットがあるのでしょうか、それともできるから自慢するためにやっただけなのでしょうか? ;)

4

1 に答える 1

3

&&false の場合は左側を返し、それ以外の場合は右側を返します。

が定義されていない場合window.functionnameは、false になります。

定義されている場合にのみ、右側が評価され、関数が呼び出されます。

関数として呼び出そうとするとundefined、例外がスローされ、スクリプトが停止します。それを防ぐための検査です。

于 2013-11-04T08:47:11.680 に答える