小議windowevent || ev

1181 ワード

以前からプロジェクトをしていたときにこの問題に遭遇しましたが、怠け者でまとめられていません.今日はまとめてみましょう.
 
onclick=「alert(arguments.callee)」という文を任意の要素に置いて、異なるブラウザで何がポップアップされるか試してみましょう.
結果:
IE 7とIE 8--->function onclick(){alert(arguments.callee)}この二人の老人は時代の歩みに追いつかず、プログラマーに頼って引きずるしかないと言わざるを得ない.IE 6はすでにマイクロソフトに放棄されており、アリはIE 6と互換性がないと聞いています.
IE9、firefox、chrome------>function onclick(event){alert(arguments.callee)}
 
argumentsを知らない人もいるかもしれませんが、まずこのオブジェクトについてお話しします.間違いなく、オブジェクトです.配列のようなオブジェクトです.
多くのjsライブラリはargumentsオブジェクトを利用しているので、agrumentsオブジェクトはjavascriptプログラマーにとって熟知する必要があります.
alert(arguments instanceof Array);//falseを返す
alert(typeof(arguments));//objectを返す
 
役割の1つは、柔軟な関数を作成することができます.
関数パラメータが不確定な場合butはargumentsによって関数パラメータの具体的な個数を知ることができる
注意:argumentsは実参のコピーです.つまり、形参とは関係ありません.
 
arguments.calleeは実行中の関数自体の参照を返して、どのように理解して、関数自身の参照に対して、はい、このようにして、とても熟知しているかどうか、再帰して、再帰は自分を引用して、calleeの方法は完璧に再帰を実現することができます!
もう一つcallerの方法がありますが、ここでは言いません.
 
最初の場所に戻る
互換性の問題があるため、私たちはよくこのように書く必要があります.
function Function(ev){

     var event = window.event||ev;

}


また、arguemgnsオブジェクトの最初の値は、関数に実パラメータがない場合にeventオブジェクトです.