よく考えてみてください.JSの関数宣言と関数表現の違い.

2236 ワード

javascriptにおける関数宣言と関数表現の違い
      まず何が関数宣言式ですか?
function myfunc(a,b){}
 
  
      次は関数式です.
var myfunc=function(a,b){};
      ははは、おそらく多くの看官はここを見て、雲の子がここにいると思います.
      解析器は環境にデータをロードすると、関数宣言を優先的に読み取り、コードを実行する前にアクセスできるようにします.関数式は、解像度がそのコード行に実行されるまで解釈されて実行されます.ロード時はundefinedのみが与えられます.
例は以下の通りです.
//      
alert(myfunc(1,2));
function myfunc(a,b){
   return a+b;
}
//      
alert (myfunc(1,2));
var myfunc=function(a,b){
    return a+b;
};
     多くの視聴者がここに来てこれらを知っていると思います.どれを使ってもっと考えてみますか?はい、雲ちゃんの問題も来ました.このコードは自分の認識で直接運行結果を言ってほしいです.答えを返してからコードを実行してみてください.なぜですか?
<script type="text/javascript" >
function x(){
  alert(2);
}
x();
var x=function(){
  alert(0);
};
x();
var x=function(){
  alert(1);
};
x();
function x(){
  alert(3);
}
x();
</script>
侠客の皆さん、よろしくお願いします.