Javascript 函数详解
Javascript 函數(shù)詳解
1)函數(shù)聲明:
通過關鍵字function定義,把函數(shù)作為變量來聲明
函數(shù)聲明后不會立即執(zhí)行,會在我們需要的時候調用到。
2)函數(shù)表達式:函數(shù)表達式可以存儲在變量中
var x = function (a, b) {return a * b}; var y = x(1, 2);3)Function() 構造函數(shù):通過內置函數(shù)構造器Function()來定義。
let a = new Function('a', 'b', 'return a + b'); let b = a(1, 2); document.write(a); //function anonymous(a,b ) { return a + b } document.write(b); // 3 // 構造函數(shù): function myFunction(arg1, arg2) {this.firstName = arg1;this.lastName = arg2; } var x = new myFunction("John","Doe"); x.firstName; // "John"4) 自調用函數(shù):表達式后面緊跟 () ,則會自動調用
5)箭頭函數(shù): IE11 及更早 IE 版本不支持箭頭函數(shù)
箭頭函數(shù)表達式的語法比普通函數(shù)表達式更簡潔
6) 函數(shù)是對象:
a) arguments: 隱式參數(shù)
arguments對象是所有(非箭頭)函數(shù)中都可用的局部變量。
可以使用arguments對象在函數(shù)中引用函數(shù)的參數(shù)。
arguments對象不是一個 Array 。它類似于Array,但除了length屬性和索引元素之外沒有任何Array屬性
7)函數(shù)的參數(shù):(顯式參數(shù)),調用函數(shù)時,傳遞的值就叫參數(shù),供在函數(shù)中使用。
多個參數(shù)由逗號(,)分隔;
c) 帶返回值的函數(shù):使用return語句返回值;執(zhí)行return時函數(shù)會停止執(zhí)行,并返回指定的值。
<script>function way(a, b) {return a + b;}let c = way(2, 3); // 5; </script> <script>function way(a, b) {return a > b;}let c = way(2, 3); // false; </script> <script>let c = 0;function way(a, b) {if (a < b) {return;};c = a + b;}let c = way(2, 3); // undefined;document.write(c); // 5 </script>8) 閉包:
閉包是指有權訪問另一個函數(shù)作用域中變量的函數(shù),創(chuàng)建閉包的最常見的方式就是在一個函數(shù)內創(chuàng)建另一個函數(shù),通過另一個函數(shù)訪問這個函數(shù)的局部變量,利用閉包可以突破作用鏈域,將函數(shù)內部的變量和方法傳遞到外部。
閉包的特性:
1.函數(shù)內再嵌套函數(shù)
2.內部函數(shù)可以引用外層的參數(shù)和變量
3.參數(shù)和變量不會被垃圾回收機制回收
閉包是一種保護私有變量的機制,在函數(shù)執(zhí)行時形成私有的作用域,保護里面的私有變量不受外界干擾。直觀的說就是形成一個不銷毀的棧環(huán)境。
總結
以上是生活随笔為你收集整理的Javascript 函数详解的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 安卓 收起软件盘
- 下一篇: Java 基础——类和对象