码迷,mamicode.com
首页 > Web开发 > 详细

JS定义函数

时间:2015-08-25 23:32:33      阅读:147      评论:0      收藏:0      [点我收藏+]

标签:

定义函数有三种方式:1,function fun()这种叫函数申明;2,var fun=function()这种叫函数表达式;3,var fun=new Function()也叫函数表达式。
在同一个执行环境中,函数申明不管是在什么位置,都会被提升至代码的最前面,即便前面是函数表达式,这个是js的规则。

例题:

function fun (){
                        alert(0);
                       }
fun();

var fun = function (){
                                 alert(1);
                                }
fun();

var fun =function (){
                                 alert(2);
                               }
fun();

function fun (){
                        alert(3);
                       }
fun();

答案:3122


最先执行的肯定是第一个fun(),它指向最后的那个function fun ()。然后又执行第二个fun(),它指向第一个var fun = function ()。然后执行第三个fun(),第二个var fun = function ()覆盖第一个,因为js没有重载的方法,所以就是这么个运行流程。

等同于代码变成了这样:

function fun (){
                        alert(0);
                       }

function fun (){
                        alert(3);
                       }
fun();

var fun = function (){
                                 alert(1);
                                }
fun();

var fun =function (){
                                 alert(2);
                               }
fun();

fun();

 

JS定义函数

标签:

原文地址:http://www.cnblogs.com/Decmber/p/4758903.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!