javascript两种不同形式函数定义的区别
第一种方法:
直接用function 函数名 (){} 形式,此方法的函数可以在函数定义语句之前,也可以在定义语句之后调用,因为执行时会首先将“function 函数名 (){} ”进行提前编译。
<html> <body> <script type="text/javascript"> F(); function F(){ alert('This is F().'); } </script> </body> </html>
第二种方法:
使用var 函数名=function(){} 形式来定义,但是此时的函数只能在定义语句之后进行调用。
<html> <body> <script type="text/javascript"> var F = function(){ alert('This is F().'); } F(); //必须放到var F =function(){...}之后。
</script>
</body>
</html>
原因分析:
第二种定义方法会被认为是一条赋值语句,而赋值语句是不会被提前编译的,也就是如果放到定义语句之前的话,将会出现函数未定义的现象。
浙公网安备 33010602011771号