JavaScript function 函式
函式是JavaScript中應用最為廣泛的資料結構。
首先看一段程式碼例項感受一下它的功能:
[JavaScript] 純文字檢視 複製程式碼執行程式碼function func(webName,age){ let str=webName+"已經"+age+"歲了"; console.log(str); } func("螞蟻部落",5); func("百度",18);
程式碼執行效果截圖如下:
上面程式碼建立一個函式,呼叫兩次並傳遞不同的引數。
由此我們可以對函式做一個總結:
(1).函式構成需要符合一定的語法規範。
(2).能夠接受引數。
(3).可以重複利用。
(4).函式可以返回一個值,上面程式碼並沒有演示。
一.建立函式:
函式結構需要符合一定的語法規範,當前建立函式有三種方式:
(1).函式宣告方式。
(2).函式表示式方式。
(3).利用Function建構函式。
下面分別做一下詳細介紹:
函式宣告方式:
此方式建立函式必須要遵循如下嚴格的語法規則:
[JavaScript] 純文字檢視 複製程式碼function 函式名稱 (引數:可選){ 函式體 }
特別說明:函式宣告方式建立函式,函式名稱是必須的,表示式方式則是可選的。
程式碼例項如下:
[JavaScript] 純文字檢視 複製程式碼function func(webName,age){ // code }
結構分析如下:
(1).func是函式名稱。
(2).函式名稱後面是一個小括號,小括號是必須的。
(3).小括號中的webName與age是引數,引數是可選的。
(4).大括號中內容是函式體部分,是具體的功能實現,可以為空,但是大括號不能省略。
表示式方式宣告:
語法規則如下:
[JavaScript] 純文字檢視 複製程式碼function 函式名稱(可選)(引數:可選){ 函式體 }
表示式方式宣告的函式,名稱是可選的,這一點與函式宣告方式不同。
程式碼例項如下:
[JavaScript] 純文字檢視 複製程式碼執行程式碼let func=function func(webName){ console.log(webName); } func("螞蟻部落")
程式碼執行效果截圖如下:
上述程式碼就是一個賦值表示式,右側函式帶有名字,最常見的是沒有名字的形式:
[JavaScript] 純文字檢視 複製程式碼執行程式碼let func=function(webName){ console.log(webName); } func("螞蟻部落")
程式碼執行效果截圖如下:
所謂表示式方式宣告,本質就是讓函式處於表示式環境中,作為一個運算元存在。
理解了本質,就可以對其進行靈活應用,最常見的是對匿名函式的使用。
具體參閱JavaScript 匿名函式一章節。
ES2015新增箭頭函式,全部是匿名函式,也就是通過表示式方式宣告。
關於箭頭函式具體參閱JavaScript 箭頭函式一章節。
Function建構函式方式:
function函式自身也是一個物件例項,它可以由Function建構函式建立。
具體可以參閱JavaScript Function一章節。
二.函式的呼叫與返回值:
函式名稱+()可以呼叫指定函式,通過小括號可以傳遞引數。
對於任何方式宣告的函式都適用,程式碼例項如下:
[JavaScript] 純文字檢視 複製程式碼執行程式碼function func(a,b){ let num=a+b; return num; } console.log(func(1,2));
程式碼執行效果截圖如下:
通過語句可以返回一個值,如果沒有return語句,相當於返回undefined。
三.函式宣告提升:
函式宣告具有提升效果,具體參閱JavaScript 變數與函式宣告前置一章節。
我們說建立函式有三種方式,而不能說宣告函式有三種方式。
宣告函式就是本文介紹的第一種建立函式的方式。
相關文章
- javascript Function()建構函式JavaScriptFunction函式
- JavaScript入門-函式function(二)JavaScript函式Function
- JavaScript Function 函式深入總結JavaScriptFunction函式
- JavaScript自執行函式(function(){})()的理解JavaScript函式Function
- 函式(FUNCTION)函式Function
- JavaScript 高階函式(Heigher-order function)JavaScript函式Function
- JavaScript學習總結(四)function函式部分JavaScriptFunction函式
- JavaScript中的函式過載(Function overloading)JavaScript函式Function
- oracle function函式castOracleFunction函式AST
- JS:1.3,函式(function)JS函式Function
- javascript中的自執行(立即執行)函式(function(){…})()JavaScript函式Function
- JavaScript: window.onload = function() {} 裡面的函式不執行JavaScriptFunction函式
- Java 8 Function 函式介面JavaFunction函式
- js的函式function(一)JS函式Function
- PL/SQL 06 函式 functionSQL函式Function
- deterministic function 函式索引Function函式索引
- SQL 自定義函式FUNCTIONSQL函式Function
- Function(函式分享)第二節Function函式
- pipeline function管道函式Function函式
- 實現call函式,手寫Function.prototype.call函式函式Function
- PyTorch:損失函式loss functionPyTorch函式Function
- SAP 的CALL FUNCTION 函式彙總Function函式
- javaScript函式JavaScript函式
- JavaScript FunctionJavaScriptFunction
- javascript Function()JavaScriptFunction
- javascript 中function(){},new function(),new Function(),Function 摘錄JavaScriptFunction
- 高階函式 - Higher Order Function函式Function
- ES6 箭頭函式(arrow function)函式Function
- PHP函式register_shutdown_function的用法PHP函式Function
- 密碼檢驗函式verify_function密碼函式Function
- ORACLE FUNCTION函式中DETERMINISTIC測試OracleFunction函式
- 關於函式索引(function-based index)函式索引FunctionIndex
- 【轉】eval()函式(javascript) - [javaScript]函式JavaScript
- 函式式JavaScript(4):函式柯里化函式JavaScript
- JavaScript Generator 函式JavaScript函式
- JavaScript 匿名函式JavaScript函式
- javascript函式(5)JavaScript函式
- JavaScript睡眠函式JavaScript函式