var js=function(){}和function js(){}的区别
免责声明:本内容仅代表回答会员见解不代表天盟观点,请谨慎对待。
版权声明:作者保留权利,不代表天盟立场。
|
|
|
|
前者是定义,后者是声明。
对于定义,代码得运行到那一行才能解析这个函数,在这之前调用将报错。
对于声明,在预编译期间编译器会将声明放到代码树顶端,在任何位置都可以调用。 |
|
|
|
|
function js(){} 这个我认为是一个方法体
var js=function(){} 声明一个参数,并且用后边的那个方法赋值 |
|
|
|
|
function js (){}
这种会声明提前,后者不会声明提前 |
|
|
|
|
楼下说得不错,用function js()吧,经常需要调用的可以直接通过js()就可以调用了 |
|
|
|
|
function js(){}这种方式的声明函数,当声明完成之后,函数js()就会进行前置,在哪里都会调用到。
var js=function(){}这种变量方式赋值的函数,变量js会前置,但是方法并没有进行赋值,所以如果在赋值语句之前调用该方法会出现undefined,因为该方法还未执行。 |
|
|
|
|