成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

JavaScript-中的面向?qū)ο?

kohoh_ / 2376人閱讀

摘要:博客地址地址今天開啟我的專欄第一篇,接下來的日子,將和大家談?wù)撘幌乱恍┦虑?,我慢慢發(fā)現(xiàn)你想實(shí)習(xí)面向?qū)ο缶幊?,你得對原型鏈比較熟悉,對于指向也要比較熟悉,才能更好,將代碼進(jìn)行高度抽象起來面向?qū)ο蟾拍蠲嫦驅(qū)ο蠛兔嫦蜻^程的區(qū)別面向過程我們在剛剛初

博客地址地址

今天開啟我的專欄第一篇,接下來的日子,將和大家談?wù)撘幌翵avaScript一些事情,

我慢慢發(fā)現(xiàn)你想實(shí)習(xí)面向?qū)ο缶幊?,你得對原型鏈比較熟悉,對于this指向也要比較熟悉,才能更好,將代碼進(jìn)行高度抽象起來

1.0 面向?qū)ο蟾拍?/b> 1.1 面向?qū)ο蠛兔嫦蜻^程的區(qū)別

面向過程:我們在剛剛初學(xué)JavaScript時(shí)候,我們要復(fù)用一個(gè)方法,就想這個(gè)方法寫成一個(gè)函數(shù),然后在需要用到的時(shí)候,進(jìn)行調(diào)用

面向?qū)ο?/b>:把構(gòu)成問題事務(wù)分解成各個(gè)對象,建立對象的目的不是為了完成一個(gè)步驟,而是為了描敘某個(gè)事物在整個(gè)解決問題的步驟中的行為。

知乎有一個(gè)關(guān)于面向?qū)ο笕グ傻幕卮?/p>

搖狗尾巴和狗搖尾巴的區(qū)別

面向過程的解決方法

在面向過程的編程方式中實(shí)現(xiàn)“把大象放冰箱”這個(gè)問題答案是耳熟能詳?shù)?,一共分三步?/p>

開門(冰箱);
裝進(jìn)(冰箱,大象);
關(guān)門(冰箱)。
面向?qū)ο蟮慕鉀Q方法
冰箱.開門()
冰箱.裝進(jìn)(大象)
冰箱.關(guān)門()
2.0 實(shí)現(xiàn)面向?qū)ο蠓椒?/b>

這里我們討論幾個(gè)主要的實(shí)現(xiàn)面向?qū)ο蠓椒?/p> 2.1 工廠模式

何為工廠模式,

function Person(name,age,sex){
    var obj = {};
    obj.name = name;
    obj.age=age;
    obj.sex=sex;
    
    return obj;
}

let person1 = Person("夏夏",18,"男")
console.log(person1)

其實(shí)上面還有這么寫

function Person(name,age,sex){
    var obj = {};
    obj.name = name;
    obj.age = age;
    obj.sex =sex;
}

let person2 = new Person("我是有new",18,"男")
2.2 構(gòu)造函數(shù)

JavaScript中new可以讓函數(shù)變的與眾不同

function demo() {
    console.log(this);
}

demo();  // window
new demo();  // demo

關(guān)于構(gòu)造函數(shù),如果你暫時(shí)不能夠理解new的具體實(shí)現(xiàn),就先記住下面這幾個(gè)結(jié)論吧。

與普通函數(shù)相比,構(gòu)造函數(shù)并沒有任何特別的地方,首字母大寫只是我們約定的小規(guī)定,用于區(qū)分普通函數(shù);

new關(guān)鍵字讓構(gòu)造函數(shù)具有了與普通函數(shù)不同的許多特點(diǎn),而new的過程中,執(zhí)行了如下過程:
聲明一個(gè)中間對象;

將該中間對象的原型指向構(gòu)造函數(shù)的原型;

將構(gòu)造函數(shù)的this,指向該中間對象;

返回該中間對象,即返回實(shí)例對象。

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/89581.html

相關(guān)文章

  • SegmentFault 技術(shù)周刊 Vol.32 - 七夕將至,你的“對象”還好嗎?

    摘要:很多情況下,通常一個(gè)人類,即創(chuàng)建了一個(gè)具體的對象。對象就是數(shù)據(jù),對象本身不包含方法。類是相似對象的描述,稱為類的定義,是該類對象的藍(lán)圖或原型。在中,對象通過對類的實(shí)體化形成的對象。一類的對象抽取出來。注意中,對象一定是通過類的實(shí)例化來的。 showImg(https://segmentfault.com/img/bVTJ3H?w=900&h=385); 馬上就要到七夕了,離年底老媽老爸...

    李昌杰 評論0 收藏0
  • SegmentFault 技術(shù)周刊 Vol.32 - 七夕將至,你的“對象”還好嗎?

    摘要:很多情況下,通常一個(gè)人類,即創(chuàng)建了一個(gè)具體的對象。對象就是數(shù)據(jù),對象本身不包含方法。類是相似對象的描述,稱為類的定義,是該類對象的藍(lán)圖或原型。在中,對象通過對類的實(shí)體化形成的對象。一類的對象抽取出來。注意中,對象一定是通過類的實(shí)例化來的。 showImg(https://segmentfault.com/img/bVTJ3H?w=900&h=385); 馬上就要到七夕了,離年底老媽老爸...

    Lyux 評論0 收藏0
  • SegmentFault 技術(shù)周刊 Vol.32 - 七夕將至,你的“對象”還好嗎?

    摘要:很多情況下,通常一個(gè)人類,即創(chuàng)建了一個(gè)具體的對象。對象就是數(shù)據(jù),對象本身不包含方法。類是相似對象的描述,稱為類的定義,是該類對象的藍(lán)圖或原型。在中,對象通過對類的實(shí)體化形成的對象。一類的對象抽取出來。注意中,對象一定是通過類的實(shí)例化來的。 showImg(https://segmentfault.com/img/bVTJ3H?w=900&h=385); 馬上就要到七夕了,離年底老媽老爸...

    AaronYuan 評論0 收藏0
  • 面向對象JavaScript

    摘要:是完全的面向?qū)ο笳Z言,它們通過類的形式組織函數(shù)和變量,使之不能脫離對象存在。而在基于原型的面向?qū)ο蠓绞街?,對象則是依靠構(gòu)造器利用原型構(gòu)造出來的。 JavaScript 函數(shù)式腳本語言特性以及其看似隨意的編寫風(fēng)格,導(dǎo)致長期以來人們對這一門語言的誤解,即認(rèn)為 JavaScript 不是一門面向?qū)ο蟮恼Z言,或者只是部分具備一些面向?qū)ο蟮奶卣鳌1疚膶⒒貧w面向?qū)ο蟊疽?,從對語言感悟的角度闡述為什...

    novo 評論0 收藏0
  • JS對象(1)重新認(rèn)識面向對象

    摘要:對象重新認(rèn)識面向?qū)ο竺嫦驅(qū)ο髲脑O(shè)計(jì)模式上看,對象是計(jì)算機(jī)抽象現(xiàn)實(shí)世界的一種方式。除了字面式聲明方式之外,允許通過構(gòu)造器創(chuàng)建對象。每個(gè)構(gòu)造器實(shí)際上是一個(gè)函數(shù)對象該函數(shù)對象含有一個(gè)屬性用于實(shí)現(xiàn)基于原型的繼承和共享屬性。 title: JS對象(1)重新認(rèn)識面向?qū)ο? date: 2016-10-05 tags: JavaScript 0x00 面向?qū)ο?從設(shè)計(jì)模式上看,對象是...

    superw 評論0 收藏0
  • javascript面向對象之“多態(tài)”

    摘要:之前,本質(zhì)上不能算是一門面向?qū)ο蟮木幊陶Z言,因?yàn)樗鼘τ诜庋b繼承多態(tài)這些面向?qū)ο笳Z言的特點(diǎn)并沒有在語言層面上提供原生的支持。所以在中出現(xiàn)了等關(guān)鍵字,解決了面向?qū)ο笾谐霈F(xiàn)了問題。 ES6之前,javascript本質(zhì)上不能算是一門面向?qū)ο蟮木幊陶Z言,因?yàn)樗鼘τ诜庋b、繼承、多態(tài)這些面向?qū)ο笳Z言的特點(diǎn)并沒有在語言層面上提供原生的支持。但是,它引入了原型(prototype)的概念,可以讓我們以...

    JerryWangSAP 評論0 收藏0

發(fā)表評論

0條評論

最新活動(dòng)
閱讀需要支付1元查看
<