从零开始的全栈工程师——js篇2.12(面向对象)
面向?qū)ο?/h3>
Js一開(kāi)始就是寫(xiě)網(wǎng)頁(yè)特效,面向過(guò)程的,作者發(fā)現(xiàn)這樣寫(xiě)不好,代碼重復(fù)利用率太高,計(jì)算機(jī)內(nèi)存消耗太大,網(wǎng)頁(yè)性能很差。
所以作者就收到j(luò)ava和c的影響,往面向?qū)ο罂魁R。Js天生有一個(gè)Object,但他沒(méi)有面向?qū)ο蟮奶卣?#xff08;封裝,繼承,多態(tài))。
最后研究出了構(gòu)造函數(shù)。
構(gòu)造函數(shù)最終目的是生成對(duì)象
我們把封裝的那個(gè)函數(shù)叫 類
類里面的屬性是私有的
類原型上的屬性是公有的 可以繼承
1)首先類身上天生自帶一個(gè)prototype的屬性 屬性值是對(duì)象
2)prototype 對(duì)象天生有一個(gè)constructor屬性 屬性值是類本身
3)實(shí)例天生有一個(gè)__proto__指向自己類的原型
原型鏈主要針對(duì)對(duì)象的屬性來(lái)說(shuō)的↑ ↑ ↑
作用域鏈主要針對(duì)變量來(lái)說(shuō)的↓ ↓ ↓
var a和a的區(qū)別
沒(méi)有帶var的變量就不能存放到內(nèi)存地址中。就沒(méi)有變量提升這種說(shuō)法了。相當(dāng)于給window加了一個(gè)屬性window.a。
帶var 可以存放在內(nèi)存地址中,有變量提升,同時(shí)也相當(dāng)于給window加了一個(gè)屬性window.a
?
轉(zhuǎn)載于:https://www.cnblogs.com/lijieqiqi/p/qiershier.html
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來(lái)咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)總結(jié)
以上是生活随笔為你收集整理的从零开始的全栈工程师——js篇2.12(面向对象)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 深入理解L1、L2正则化
- 下一篇: liunx-mysql-password