js中函数宣言与表达式
js中函数声明与表达式
//函数声明:function 函数名(){}
//函数表达式: function 函数名(可写可不写的)(){} : 命名函数表达式 匿名函数表达式
//function aaa(){} : 函数声明
//var a = function aaa(){} : 命名函数表达式
//var a = function(){} : 匿名函数表达式
(function aaa(){}) : 表达式
~function aaa(){}
-function aaa(){}
+function aaa(){}
//函数声明:function 函数名(){}
//函数表达式: function 函数名(可写可不写的)(){} : 命名函数表达式 匿名函数表达式
//function aaa(){} : 函数声明
//var a = function aaa(){} : 命名函数表达式
//var a = function(){} : 匿名函数表达式
(function aaa(){}) : 表达式
~function aaa(){}
-function aaa(){}
+function aaa(){}
!function aaa(){}
/区别:
//1.函数表达式可以直接后面加括号执行,而函数声明是不可以的
//2.函数声明可以被提前解析出来的
//function aaa(){ alert(1); }();
//var a = function aaa(){ alert(1); }();
//~function aaa(){ alert(1) }();
/*if(true){
function aaa(){
alert(1);
}
}
else{
function aaa(){
alert(2);
}
}
aaa();*/
if(true){
var a = function aaa(){
alert(1);
}
}
else{
var a = function aaa(){
alert(2);
}
}
a();
/*
var a = function aaa(){
alert(1);
alert(typeof aaa); //内部是可以找到的
}
//a();
aaa(); //外面是找不到的*/
(function aaa(){ alert(1) })
aaa();
function aaa(){
return bbb();
}
/*function bbb(){
debugger;
}*/
var bbb = (function bbb(){
return function(){
debugger;
}
})();
aaa();
版权声明:本文为博主原创文章,未经博主允许不得转载。