1领虹、面向過程:
????關(guān)注功能如何實(shí)現(xiàn)规哪,越復(fù)雜越難
2、面向?qū)ο螅?/h2>
????關(guān)注是誰(shuí)來做這件事掠械,越復(fù)雜越簡(jiǎn)答
????優(yōu)勢(shì):團(tuán)隊(duì)協(xié)作開發(fā)
????用面向?qū)ο笏枷虢忉屍?/b> :有輪子由缆,燒汽油注祖,交通工具猾蒂,有顏色均唉,歸為一類,這一類東西肚菠,就叫做汽車舔箭。
? ? 理解:面向?qū)ο缶褪前丫哂邢嗤卣鞯膬?nèi)容歸為一類,把它封裝蚊逢,再把描述性的特性掛在這個(gè)類的原型下 层扶,這個(gè)編程方式就叫做面向?qū)ο蟆?b>也就是封裝函數(shù),即歸類烙荷。
3镜会、構(gòu)造函數(shù) :
????構(gòu)造對(duì)象的函數(shù)。
4终抽、new : 一元運(yùn)算符戳表,專門運(yùn)算函數(shù)
????1.使用new運(yùn)算符之后,函數(shù)調(diào)用可以不加括號(hào)昼伴,加括號(hào)的目的就是為了傳參匾旭。
????2.this變?yōu)閹Ш瘮?shù)名的對(duì)象。
????3.使用new創(chuàng)建函數(shù)圃郊,返回值默認(rèn)就是帶函數(shù)名的對(duì)象价涝。
????4.new完之后:
????????(1)如果return后面為簡(jiǎn)單類型,那么返回值仍然是默認(rèn)的帶函數(shù)名的對(duì)象持舆。
????????(2)如果return后面為復(fù)合類型色瘩,那么返回值就是return后面的復(fù)合類型。
5逸寓、面向?qū)ο笕筇匦?:
????1.抽象 :把具有相同特征的內(nèi)容抽離出來
????2.封裝 :包在一個(gè)函數(shù)中
????3.繼承
1.工廠方式(構(gòu)造函數(shù)):
6泞遗、原型:
在函數(shù)創(chuàng)建的時(shí)候,自身帶著的一個(gè)屬性席覆,這個(gè)屬性的值為對(duì)象史辙。
如果實(shí)例化對(duì)象上沒有某個(gè)屬性或者方法,那么會(huì)去構(gòu)造函數(shù)下的原型下去查找有沒有這個(gè)方法佩伤。
7聊倔、原型鏈? __proto__:
????只要是實(shí)例化的對(duì)象,就有原型鏈生巡。它是實(shí)例化對(duì)象和構(gòu)造函數(shù)原型的橋梁耙蔑。函數(shù)本身也是一個(gè)實(shí)例化對(duì)象,所以也有這個(gè)屬性孤荣。構(gòu)造函數(shù)的原型下的屬性或者方法甸陌,只給它的實(shí)例化對(duì)象使用(如果沒有原型须揣,就走_(dá)_proto__.construstor)。
8钱豁、實(shí)例化對(duì)象.__proto__ === 構(gòu)造函數(shù)的原型
9耻卡、包裝對(duì)象:
????????基本數(shù)據(jù)類型本身不是對(duì)象,但是卻可以通過屬性操作的方式去調(diào)用某些方法牲尺,為什么卵酪?
????????當(dāng)使用原始類型的值(string、number谤碳、boolean)溃卡,在調(diào)用對(duì)應(yīng)屬性和方法的時(shí)候,內(nèi)部會(huì)自動(dòng)轉(zhuǎn)成對(duì)應(yīng)的對(duì)象蜒简。隱式創(chuàng)建的這個(gè)對(duì)象瘸羡,就成為包裝對(duì)象,包裝對(duì)象使用之后立即被銷毀
10.對(duì)象的遍歷:for...in...
? ? ? ? 遍歷自身和原型上的屬性搓茬。(特別注意一下犹赖,原型的也會(huì)被遍歷)
? ? ? ? 數(shù)組也可以用for...in...,會(huì)打印出數(shù)組的key(就是下標(biāo))
11.hasOwnProperty
? ? 查看屬性是不是對(duì)象自身的垮兑,不會(huì)查找原型上的屬性冷尉。
12.instanceof
二元運(yùn)算符。用來驗(yàn)證對(duì)象和構(gòu)造函數(shù)的關(guān)系系枪。
13.繼承
? ? 1>拷貝繼承:
????????????第一步:.類的繼承(屬性繼承):在自身的構(gòu)造函數(shù)內(nèi)部調(diào)用父類并且修改this
? ? ? ? ? 第二步:拷貝繼承(繼承方法)
? ? ? ? ? ? ? ? for in父類原型的方法雀哨。這樣操作就是簡(jiǎn)單類型的賦值,而不是符合類型賦值私爷,所以不會(huì)相互影響雾棺。
? 2>原型繼承:
? ? ????第一步:還是和拷貝繼承一樣,先繼承屬性
? ? ? ? 第二步:方法繼承
? ? ? ? ? ? 1衬浑、首先new一個(gè)新的構(gòu)造函數(shù)
? ? ? ? ? ? 2捌浩、要繼承的父類原型賦值給這個(gè)構(gòu)造函數(shù)的原型:賦址操作,引用一個(gè)地址? ??
????????????3工秩、然后將子類的原型等于這個(gè)新的構(gòu)造函數(shù)尸饺。
14.valueof:獲取對(duì)應(yīng)類型的原始值
15.constractor : 查看某個(gè)對(duì)象的構(gòu)造函數(shù)
????這個(gè)指向容易變(在賦址的時(shí)候就會(huì)變)浪听,就算變了并不影響代碼執(zhí)行,它只是一個(gè)輔助作用眉菱。