對象
1.什麼是對象
–多個數據的封裝體,用來保存多個數據的容器,一個對象代表現實中的一個事物,
2.爲什麼要用對象
–統一管理多個數據
3.對象的組成
–屬性:屬性名(字符串)和屬性值(任意)組成,
–方法:一種特別的屬性(屬性值是函數)
4.如何訪問對象內部的數據
– .屬性名(得到屬性值):編碼簡單,有時不能用
[屬性名字符串](屬性值):
----相關問題------
1.什麼時候必須用[屬性名字符串] 的方式
--屬性名包含特殊字符:-,空格,
--變量名不確定
函數
1.什麼是函數
–實現特定功能的n條語句的封裝體。只有函數是可以執行的,其他類型的數據不能執行
2.爲什麼要用函數
–提高代碼複用,便於閱讀交流
3.如何定義函數
–函數聲明 function fn1(){}
–表達式 var fn2 = function() {}
4.如何調用(執行)函數
–test() :直接調用
– obj.test() : 通過對象調用
– new test() : new 調用
–test.call/apply(obj): obj.test() 臨時讓test成爲obj的方法進行調用
回調函數
1.什麼函數纔是回調函數
–你定義的,你沒有調用,但是最終執行了
2.常見的回調函數
–dom事件的回調函數,定時器回調函數,ajax請求回調函數, 生命週期回調函數
IIFE(匿名函數自調用)立即執行函數
特點:類似函數調用
1.作用
–隱藏實現 --不會污染外部(全局)命名空間
函數中的this
1.this是什麼
–任何函數本質上都是通過某個對象來調用的,如果沒有指定就是window
–所有函數內部都有一個變量this
–他的值是調用函數的當前對象
2.如何確定this的值
–test() :window
–p.test() :p
–new test() :新創建的對象
–p.call(obj) :obj
3.語句中分號的問題
–在下面兩種情況下不加分號會有問題
*小括號開頭的前一條語句 *中方括號開頭的前一條語句