建立函式的方式和區別

2021-10-23 20:15:36 字數 887 閱讀 3605

###函式宣告

function add(a,b)

add(1,2); //3

存在函式提公升,在js中最先執行

###函式表示式

####命名函式

var add = function(a,b)

add(1,2); //3

不存在函式提公升,等到解析器解析到它時才會執行。

因為這是乙個命名函式,js中有變數提公升和函式提公升,命名函式相當於把函式當做乙個值賦給add這個變數,那麼此時做的提公升應該是:

var add;

add = function(a,b)

add(1,2); //3

####自呼叫函式

自呼叫函式開啟了乙個新的作用域,避免了變數的汙染。

將自呼叫函式中的區域性變數提公升為全域性變數

;(function())(window)
#####匿名函式

(function(a,b))(1,2)
#####命名函式帶返回值

var add = (function(a,b))(1,2)
###函式構造法(很少用)

也就是建立function物件

var add = new function('a','b','return a+b');

console.log(add(1,2));

var num = 1;

function foo()

foo()(); //1

建立物件的方式 建立函式的方式

1 字面量 var obj 2 建構函式建立物件 function star name,age var obj new star 朱一龍 30 3 new關鍵字 var obj new object 1 普通函式 function fn 2 匿名函式 var fn function 3 new fu...

函式建立方式及區別,粗略總結函式原理

函式其實乙個封裝一段 的物件,之所以要封裝是為了便於我們以後 的重用。通俗的說就是一項任務可能被反覆的使用,就要定義函式,以便以後反覆使用。函式宣告 定義 使用function關鍵字宣告乙個函式,再指定乙個函式名,叫函式宣告。表示式 function 函式名 引數列表 function add1 n...

JS建立函式的方法和區別

1.宣告方式建立函式 function 函式名 形參列表 2.賦值方式建立函式 var 函式名 function 3.建立建構函式 var 函式名 new function在程式開始執行前,現將var宣告的變數和function宣告的函式,提前到當前作用域的頂部集中建立1.宣告方式建立函式 會被整體...