摘要:在中創建函數的方式有很多種,本文主要講解函數聲明和函數表達式兩種方式創建函數的區別上面是這兩種方法創建函數的格式他倆的區別主要在對待對待這兩種方式的處理方式上,前者看作函數,后者為變量。
在JS中創建函數的方式有很多種,本文主要講解函數聲明(function declaration)和函數表達式(function expression)兩種方式創建函數的區別.
function add1(a, b) { return a + b; } // function declaration var add2 = function(a, b) { return a+b; }; // function expression
上面是這兩種方法創建函數的格式
他倆的區別主要在對待JS對待這兩種方式的處理方式上,前者看作函數,后者為變量。JS在執行代碼的時候,會有一個叫做Hoisting的操作,Hoisting的結果,把對那些變量和函數進行預處理,把他們放在前面了,而變量只放過去變量名,函數卻都被放過去了。比如我們看下面代碼來理解一下。
console.log(a); var a = "1"; console.log(a); // undefined 1;
而對于函數
console.log(a()); function a() { console.log("lol"); } console.log(a()); // lol lol;
從上面可以看出,雖然變量和函數都被Hoisting,但是處理的方式卻是不同的,把這個處理方式應用到上面兩種函數聲明上面,第一種被看過函數,第二種被看作變量,那區別就很顯然了:第二種函數的聲明必須在函數調用的前面,第一個則無需這樣。我們再來看最后一個例子:
var result1 = add1(1, 1); function add1(n1, n2) { return n1 + n2; } var result2 = add2(1,1) var add2 = function(n1, n2) { return n1 + n2; }; result1 // 2 result2 // undefined
幫到你了嗎?
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/84336.html
摘要:函數聲明和函數表達式的區別函數聲明只能出現在程序或函數體內。所以,在等語義為語句的代碼塊中存在函數聲明,由于函數提升特性,會破壞掉原本的語義。 這篇談一下JS函數聲明與函數表達式的區別及要注意的地方: 函數聲明主要有兩種類型: 函數聲明 function fn() {}; 函數表達式 var fn = function () {}; 這兩種函數創建方式...
摘要:本文章記錄本人在深入學習執行上下文以及作用域鏈中看書理解到的一些東西,加深記憶和并且整理記錄下來,方便之后的復習。每個執行上下文都與一個作用域鏈關聯在一起。該對象的屬性的值是它被創建時的執行上下文對應的作用域鏈。 本文章記錄本人在深入學習執行上下文以及作用域鏈中看書理解到的一些東西,加深記憶和并且整理記錄下來,方便之后的復習。 執行上下文概念 執行上下文,是ECMAScript規法...
摘要:屬性我們還可以使用來書寫樣式,它會自動幫我們編譯為格式內容語法高亮建議使用配合該擴展支持語法高亮擴展開發項目,當然你可以把文件當作對待。 Omil 是什么? Omil是一個 webpack 的 loader,它允許你以一種名為單文件組件(SFCs)的格式撰寫 Omi 組件: ${this.data.title} export default class { test(){...
摘要:學習目標掌握編程的基本思維掌握編程的基本語法我們先來學習基礎,后續會講解高級。語句基本語法當循環條件為時,執行循環體,當循環條件為時,結束循環?;A語法循環體循環條件代碼示例初始化變量循環體自增循環條件語句和一般用來解決無法確認次數的循環。 學習目標: 掌握編程的基本思維 掌握編程的基本語法 我們先來學習JavaScript基礎,后續會講解JavaScript高級。 重點內容 變...
摘要:學習目標掌握編程的基本思維掌握編程的基本語法我們先來學習基礎,后續會講解高級。語句基本語法當循環條件為時,執行循環體,當循環條件為時,結束循環。基礎語法循環體循環條件代碼示例初始化變量循環體自增循環條件語句和一般用來解決無法確認次數的循環。 學習目標: 掌握編程的基本思維 掌握編程的基本語法 我們先來學習JavaScript基礎,后續會講解JavaScript高級。 重點內容 變...
閱讀 1961·2021-09-09 09:33
閱讀 1107·2019-08-30 15:43
閱讀 2646·2019-08-30 13:45
閱讀 3297·2019-08-29 11:00
閱讀 845·2019-08-26 14:01
閱讀 3559·2019-08-26 13:24
閱讀 471·2019-08-26 11:56
閱讀 2683·2019-08-26 10:27