Javascript基礎(chǔ)知識盲點總結(jié)之函數(shù)
函數(shù)是由事件驅(qū)動的或者當(dāng)它被調(diào)用時執(zhí)行的可重復(fù)使用的代碼塊。本文重點給大家介紹js基礎(chǔ)知識盲點總結(jié)之函數(shù)。
一、函數(shù)中的arguments對象
每個函數(shù)內(nèi)部都有一個arguments,它能返回函數(shù)所接受的所有參數(shù)
注意:argumens接收的是實參
如下是利一個利用arguments特性編寫的求和函數(shù):
function sumOnSteroids(){ var I, res = 0; var number_of_params = arguments.length; for(I = 0; I < number_of_params; i++){ res += arguments[i]; } return res; }
二、關(guān)于變量的作用域
在javascript中,不能為變量定義特定的塊級作用域,但是可以定義其所屬的函數(shù)域。
javascript中的全局變量指的是聲明在所有函數(shù)之外的變量
在一個函數(shù)內(nèi)部定義的局部變量,在函數(shù)外部是不存在的
如果在函數(shù)內(nèi)部聲明一個變量時沒有使用var語句,該變量就會被默認(rèn)為全局變量(即便在函數(shù)中定義外部也可以訪問)。這種變量會在函數(shù)被調(diào)用之前不存在,調(diào)用函數(shù)后會首次被創(chuàng)建并賦予全局作用域
三、自調(diào)函數(shù)
自調(diào)函數(shù)是可以在定義后自行調(diào)用的函數(shù),基本結(jié)構(gòu)如下:
{ function(name){ alert(‘Hello' + name + ‘!'); } }(‘Martin')
后面的()可以進行參數(shù)傳遞,其內(nèi)聲明的值會自動傳遞到function的參數(shù)中
使用如上這種自調(diào)匿名函數(shù)不會產(chǎn)生任何的全局變量
四、可自行重寫的函數(shù)
這種函數(shù)的特點是可以在執(zhí)行之后自己進行函數(shù)重寫,下面是一個例子:
function a(){ alert(“A”); a = function(){ alert(“B”) }; }
第一次調(diào)用a()時,執(zhí)行alert(“A”);第二次調(diào)用a()時,執(zhí)行alert(“B”)。因為在第一次執(zhí)行該函數(shù)時,其將全局變量a重新定義了
以上所述是小編給大家介紹的Javascript基礎(chǔ)知識盲點總結(jié)之函數(shù)的相關(guān)知識,希望對大家以上幫助!
相關(guān)文章
javascript 最常用的10個自定義函數(shù)[推薦]
如果不使用類庫或者沒有自己的類庫,儲備一些常用函數(shù)總是有好處的。2009-12-12淺談Javascript中的函數(shù)、this以及原型
下面小編就為大家?guī)硪黄獪\談Javascript中的函數(shù)、this以及原型。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-10-10window.addeventjs事件驅(qū)動函數(shù)集合addEvent等
addEvent()、removeEvent()、handleEvent()、fixEvent()[2008-02-02微信公眾號網(wǎng)頁授權(quán)登錄的超簡單實現(xiàn)步驟
微信開放平臺為第三方移動程序提供分享、傳播的接口,使用戶可將第三方程序的內(nèi)容發(fā)布給好友或分享至朋友圈,下面這篇文章主要給大家介紹了關(guān)于微信公眾號網(wǎng)頁授權(quán)登錄的超簡單實現(xiàn)方法,需要的朋友可以參考下2022-06-06uniapp自定義應(yīng)用退出執(zhí)行內(nèi)容實例代碼
近幾日使用uni-app開發(fā)移動應(yīng)用APP遇到了個不常見的需求,下面這篇文章主要給大家介紹了關(guān)于uniapp自定義應(yīng)用退出執(zhí)行內(nèi)容的相關(guān)資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下2022-12-12