摘要:定義函數與調用函數定義函數時,函數體的內容時不會被執行。調用函數才會真正執行這些。簡單來說,就是調用函數時使用的參數就是實參。
函數 函數的概念
函數式什么?函數是一段JavaScript中的一段代碼,它只能定義一次,但是可能被執行或調用多次。簡單來說,函數就是一組可重用的代碼,可以在程序的任何地方調用他。
定義函數與調用函數定義函數時,函數體的內容時不會被執行。
定義一個函數并不會自動的執行它,定義了函數僅僅是賦予函數以名稱并明確函數被調用是該做些什么。調用函數才會真正執行這些。
1.函數聲明方式 function 函數名稱 () { 函數體 - 語句塊 } 定義函數時 -> 函數體的內容是不會被執行的 function fun(){ console.log("這是一個函數"); } 2.字面量/直接量方式 var 函數名稱 = function(){ 函數體 } var fun = function(){ console.log("這是一個函數"); } 調用函數 -> 函數體的內容才被執行 fun();函數的參數
函數的參數就相當于在函數中使用的變量。JavaScript中的函數定義并未制定函數參數的類型,函數調用是也未對傳人的參數做任何的類型檢查。
參數有一下兩種:
1.形參:出現在函數定義文法中的參數列表是函數的形式參數,簡稱形參。簡單來說就是定義函數時使用的參數就是形參。
2.實參:函數調用是實際傳人的參數就是函數的實際參數,簡稱實參。簡單來說,就是調用函數時使用的參數就是實參。
一般參數要注意形參與實參的個數是相同的。但是在JavaScript中并不強求這一點,在特殊情況下,函數的形參和實參的個數可以不相同。
1.定義函數 function 函數名稱(參數){ 函數體 } 定義函數時 -> 形參 形參的定義的方式,類似于變量的(不需要任何關鍵字) 形參默認未定義任何值時 -> undefined function fun(a){// 在函數中定義一個變量,但未初始化值 console.log(a); } 2.調用函數 函數名稱(參數) 函數的調用 -> 實參(值) fun(100);// 為函數中定義的變量初始化值
1.定義函數 - 形參 允許定義多個形參 - 形參之間使用逗號分隔 function fun(a){// 在函數中定義一個變量,但未初始化值 console.log(a); } 2.調用函數 - 實參 允許定義多個形參 - 形參之間使用逗號分隔 fun(100, 200);// 為函數中定義的變量初始化值 形參與實參 形參的個數與實參不一定是一致的 形參的個數多于實參的個數 -> 多余的形參沒有值(默認為 undefined) 實參的個數多余形參的個數 -> 多余的實參沒有對應的形參 形參與實參根據占位符進行一一對應return語句
函數還可以包含衣蛾返回語句(return)。當然這個并不是必需的,可有可無。return語句是函數可以作為一個值來使用。但是return語句的確允許編寫在函數體的最后面,一旦return語句不在函數體的最后面,return語句之后的代碼都不會再執行。
// var result = fun(); // console.log(result); console.log(fun());/* 打印函數調用的結果 */ console.log(fun);/* 打印變量的值 */ 函數的return語句 的確允許不編寫在函數體的最后面 一旦return語句不在函數體的最后面 - return語句之后的代碼都不再執行 function fn(){ console.log("這是return語句之前..."); return; console.log("這是return語句之后..."); } var result = fn(); console.log(result);// 100 JavaScript得到undefined值的情況: 1.定義變量,但未初始化值 2.定義變量,并初始化值為 undefined 3.訪問數組中不存在的位置 - 默認值為 undefined 4.在函數體調用沒有定義值的形參 - 默認值為 undefined 5.當函數定義時,沒有指定返回值 - 默認返回值為 undefined
預定義函數
JavaScript預定義了一組函數,又唄成為全局函數,允許直接使用。
eval()函數用于執行以字符串(String)形式出現的JavaScript代碼。此函數可以實現動態的執行JavaScript代碼。
// 定義一個字符串 - 文本內容是JavaScript代碼 var str = "console.log("這是一段代碼...")"; // console.log(str); eval()函數 作用 - 將一個字符串類型的JavaScript代碼轉換為真正的JavaScript代碼,并且執行 問題 - 安全問題 eval(str);字符編碼與解碼
URI - 統一資源標識符 URL - 統一資源定位符 統一資源標識符的范圍大于統一資源定位符 var uri = "http://www.wolongxueyuan.com/Web前端開發工程師"; var encode = encodeURI( uri ); // 輸出 http://www.wolongxueyuan.com/Web%E5%89%8D%E7%AB%AF%E5%BC%80%E5%8F%91%E5%B7%A5%E7%A8%8B%E5%B8%88 console.log( encode ); var decode = decodeURI( encode ); // 輸出 http://www.wolongxueyuan.com/Web前端開發工程師 console.log( decode ); var uri = "http://www.wolongxueyuan.com/font-end-developer"; var encode = encodeURIComponent( uri ); // 輸出 http%3A%2F%2Fwww.wolongxueyuan.com%2Ffont-end-developer console.log( encode ); var decode = decodeURIComponent( encode ); // 輸出 http://www.wolongxueyuan.com/font-end-developer console.log( decode );
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/96864.html
摘要:基礎語法區分大小寫是一種區分大小寫的語法,意味著的關鍵字變量名函數名以及其他一切的字符表示都要使用一致的大小寫形式。化物語化物語空格和換行會忽略代碼中出現的空格換行制表符。如果不用花括號獨立獨立編寫一個語句,語法并不報錯,但不推薦。 JavaScript基礎語法 區分大小寫 JavaScript是一種區分大小寫的語法,意味著JavaScript的關鍵字、變量名、函數名以及其他一切的字符...
摘要:在定義函數的作用域外調用,得到的返回仍然是函數創建時所在的作用域的局部變量。這是因為所在的匿名函數的閉包中存放的是第一行的,而不是在循環中獲得的的當前值。 原文: http://pij.robinqu.me/JavaScript_Core/JavaScript_Basics/Function.html 源代碼: https://github.com/RobinQu/Pr...
摘要:數組創建數組數組字面量使用構造函數數組本質上是所以要判斷是不是數組,需要通過判斷。數組長度使用屬性獲取元素的個數。例如函數的對象就是這樣 原文: http://pij.robinqu.me/JavaScript_Core/JavaScript_Basics/Array.html 源代碼: https://github.com/RobinQu/Programing-In-...
摘要:函數描述表示定義一段代碼,并且可重復使用函數的定義函數聲明方式字面量表達方式函數聲明方式語法函數名稱小括號不可省去函數體函數聲明方式在定義函數時,函數體中的內容不會被執行啞吼吼調用函數使用函數名稱調用函數的時候會執行函數體中的內容字面量方 函數 描述 表示定義一段JavaScript代碼,并且可重復使用 函數的定義 函數聲明方式 字面量表達方式 函數聲明方式 語法 function...
摘要:函數一函數是什么只能可定義一次,但是可定義有一次或多次調用這是個函數二函數定義函數定義的函數以兩種方式表示函數聲明和字面量表達式函數聲明方式函數名稱定義函數函數體內容不會被執行這是個函數字面量直接量函數名稱函數體這是個函數調用函數先定義這個 JS(JavaScript)函數;一.函數是什么;只能可定義一次,但是可定義有一次或多次調用; var fun = function () { ...
摘要:作用域一作用域是什么就是變量和函數所被訪問范圍,控制變量和函數的可見性和生命周期作用域分為全局作用域和局部作用域全局作用域是指在所有函數之外聲明的變量,因為當前文檔中的其他代碼可以訪問它局部作用域是指在函數內部聲明的變量,因為該函數只能在它 JS(JavaScript)作用域;一.作用域是什么;就是變量和函數所被訪問范圍,控制變量和函數的可見性和生命周期作用域分為全局作用域和局部作用域...
閱讀 466·2021-10-09 09:57
閱讀 470·2019-08-29 18:39
閱讀 811·2019-08-29 12:27
閱讀 3028·2019-08-26 11:38
閱讀 2667·2019-08-26 11:37
閱讀 1286·2019-08-26 10:59
閱讀 1377·2019-08-26 10:58
閱讀 989·2019-08-26 10:48