變量和函數(shù)、閉包

閉包:


什么是閉包?

函數(shù)嵌套函數(shù),內(nèi)部函數(shù)可以引用外部函數(shù)的參數(shù)和變量,參數(shù)和變量不會被垃圾機構(gòu)回收;

用閉包存過循環(huán)的索引值;

用閉包做過私有變量計數(shù)器;


1

閉包選項卡

3

變量的作用域:

變量作用域指的是變量的作用范圍,javascript 中的變量分為全局變量和局部變量;

1.全局變量:在函數(shù)之外定義的變量,為整個頁面公用,函數(shù)內(nèi)部外部都可以訪問,

2.局部變量:在函數(shù)內(nèi)部定義的變量,只在定義該變量的函數(shù)內(nèi)部訪問,外部無法訪問,

封閉函數(shù):

還可以在函數(shù)定義前加上 "~" 和 "!" 等符號來定義匿名函數(shù),

this 代表當(dāng)前的對象,

常用的內(nèi)置對象有哪些?

arr 數(shù)組 , Date 日期 , string 字符串 , 正則表達式;

內(nèi)置對象:

1.document

doument .referrer? ? 獲取上一個跳轉(zhuǎn)頁面的地址;

2.location

window .location.href? ?? 獲取或重定向url地址;

window .location .search? ? 獲取地址參數(shù)部分;

window .location . hash? ? 獲取頁面秒點或叫哈希值;

3.math

math.random? ? 獲取0~1的隨機數(shù);

math .floor? ? 向下取整;

math .ceil? ? ? 向上取整;

面向?qū)ο笫且环N編程方法;

創(chuàng)建對象的方法:

1.單體創(chuàng)建對象;

2.工廠模式創(chuàng)建對象;? 例如:var tom = new object();? ? 創(chuàng)建一個空對象;


2?

1)屬性的繼承: fclass.call(this,name,age);this job = job;

2)方法的繼承 :sclass .prototype = new fclass();

call 和 apply

作用:都是可以改變 this ;

call 直接傳數(shù);?? apply 用數(shù)組的方式傳數(shù);

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容