這篇文章主要介紹了js中封閉函數(shù)、閉包、內(nèi)置對(duì)象指的是什么,具有一定借鑒價(jià)值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
臨翔網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)!從網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站建設(shè)、微信開(kāi)發(fā)、APP開(kāi)發(fā)、響應(yīng)式網(wǎng)站建設(shè)等網(wǎng)站項(xiàng)目制作,到程序開(kāi)發(fā),運(yùn)營(yíng)維護(hù)。創(chuàng)新互聯(lián)于2013年創(chuàng)立到現(xiàn)在10年的時(shí)間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來(lái)保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選創(chuàng)新互聯(lián)。
一、變量作用域
變量作用域指的是變量的作用范圍,javascript中的變量分為全局變量和局部變量
1、全局變量:在函數(shù)之外定義的變量,為整個(gè)頁(yè)面公用,函數(shù)的內(nèi)部外部都可以訪問(wèn)。
2、局部變量:在函數(shù)內(nèi)部定義的變量,只能在定義該變量的函數(shù)內(nèi)部訪問(wèn),外部無(wú)法訪問(wèn)。函數(shù)內(nèi)部訪問(wèn)變量時(shí),先在內(nèi)部查找是否有此變量,如果有,就使用內(nèi)部,如果沒(méi)有,就去外部查找
二、封閉函數(shù)
封閉函數(shù)是javascript中匿名函數(shù)的另外一種寫法,創(chuàng)建一個(gè)一開(kāi)始就執(zhí)行而不用命名的函數(shù)。
1、一般函數(shù)的定義和執(zhí)行函數(shù)
2、封閉函數(shù)的定義和執(zhí)行:(function(){...})();還可以在函數(shù)定義前加上"~"或者"!"符號(hào)來(lái)定義匿名函數(shù)。
三、閉包
閉包就是函數(shù)嵌套函數(shù),內(nèi)部函數(shù)可以引用外部函數(shù)的參數(shù)和變量,參數(shù)和變量不會(huì)被垃圾回收機(jī)制收回
1、閉包用途1:將一個(gè)變量長(zhǎng)期駐扎在內(nèi)存當(dāng)中,可用于循環(huán)中存索引值
2、閉包用途2:私有變量計(jì)數(shù)器,外部無(wú)法訪問(wèn),避免全局變量的污染
四、內(nèi)置對(duì)象
1、document
比如說(shuō)在商品詳情頁(yè)觀看時(shí),想去購(gòu)買,這是會(huì)跳轉(zhuǎn)到登錄頁(yè)面,登錄成功后使用該方法跳轉(zhuǎn)到商品詳情頁(yè)
document.referrer//獲取上一個(gè)跳轉(zhuǎn)頁(yè)面的地址(需要服務(wù)器環(huán)境)
2、location
a、window.location.href // 獲取或者重定url地址
b、window.location.search //獲取地址參數(shù)部分
c、window.location.hash //獲取頁(yè)面錨點(diǎn)或者哈希值
3、Math
a、Math.random 獲取0-1的隨機(jī)值
b、Math.floor 向下取整
c、Math.ceil 向上取整
感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“js中封閉函數(shù)、閉包、內(nèi)置對(duì)象指的是什么”這篇文章對(duì)大家有幫助,同時(shí)也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,更多相關(guān)知識(shí)等著你來(lái)學(xué)習(xí)!