每個例項物件中都有乙個屬性__proto__, 是原型, 瀏覽器使用的, 不標準的屬性
每個建構函式中都有乙個屬性prototype, 是原型, 程式設計師使用的
物件導向和面向過程都是程式設計思想
物件導向注重的是結果, 面向過程注重的是過程
物件導向的特性: 封裝, 繼承, 多型
1.通過原型實現繼承, 改變原型的指向, 屬性在初始化的時候就已經固定了, 如果是多個物件例項化, 那麼每個例項物件的屬性的值在初始化的時候都是一樣的
2.借用建構函式繼承, 不能繼承方法
3.組合繼承, 可以解決屬性和方法的繼承的問題
4.拷貝繼承, 就是把乙個物件中的原型中的所有的屬性和方法複製乙份給另乙個物件
1. 字面量的方式
2. 呼叫系統的建構函式
3. 自定義建構函式
原型鏈: 例項物件和原型物件之間的關係, 主要是通過__proto__和prototype來聯絡
原型的指向是可以改變, 所以, js中是通過改變原型來實現繼承
實現資料共享, 繼承, 都是為了節省記憶體空間
如果屬性和方法都需要共享, 那麼就把屬性和方法新增到原型中
普通的函式中this是window
建構函式中的this, 建構函式一般都是建立例項物件使用的, 是通過new關鍵字,建構函式也是函式
建構函式中的this是例項物件
方法中的this是例項物件
原型中的方法中的this是例項物件
定時器中的this是window
函式是物件, 建構函式也是函式, 也是物件
物件是不是函式呢?不一定
物件中有__proto__
函式中有prototype
math是物件, 但不是函式
JS高階 複習
面向過程和物件導向都是程式設計的思想,方式不一樣 面向過程 凡事都是親力親為,所有的 都要自己寫,每一步都要很清楚,注重的是過程 物件導向 執行者成為指揮者,只要找物件,然後讓物件做相關的事情,注重的是結果 物件導向的特性 封裝,繼承,多型 封裝 就是 的封裝,把一些特徵和行為封裝在物件中 物件導向...
複習 JS基礎
以下算是經典的入門演算法吧,還記得第一次接觸時,感覺難得要命,現在來看,也不過如此!1 如果今天是星期六,那麼1000天後是星期幾?用一條語句計算出來。var a 1000 7 6 7 alert a 2 使用者輸入乙個三位數,用程式計算三位數字的和。比如 使用者輸入155,就彈出11 使用者輸入3...
js複習筆記
isnan x 1.判斷結果不是純數字,var a 1234 var b isnan a b是 false 因為a是純數字 var a abc123 var b isnan a b是 true 因為a不是純數字 match abcd 1.判斷該字串中是否包含 abcd undefined是訪問乙個未...