摘要:創(chuàng)建對象的最常用方法是使用花括號,并使用點(diǎn)表示法向?qū)ο筇砑訉傩院头椒ā.?dāng)然,下一步是將邏輯封裝在我們可以在需要創(chuàng)建新動物時(shí)調(diào)用的函數(shù)內(nèi)部。我們將這種模式稱為,我們將函數(shù)本身稱為構(gòu)造函數(shù),因?yàn)樗?fù)責(zé)構(gòu)造一個新對象。
視頻Video
https://www.youtube.com/watch...
如果不好好的學(xué)習(xí)對象,你就無法在JavaScript中獲得很大的成就。它們幾乎是JavaScript編程語言的每個方面的基礎(chǔ)。在這篇文章中,您將了解用于實(shí)例化新對象的各種模式,并且這樣做,您將逐漸深入了解JavaScript的原型。
對象是鍵/值對。創(chuàng)建對象的最常用方法是使用花括號{},并使用點(diǎn)表示法向?qū)ο筇砑訉傩院头椒ā?/p>
let animal = {} animal.name = "Leo" animal.energy = 10 animal.eat = function (amount) { console.log(`${this.name} is eating.`) this.energy += amount } animal.sleep = function (length) { console.log(`${this.name} is sleeping.`) this.energy += length } animal.play = function (length) { console.log(`${this.name} is playing.`) this.energy -= length }
如上代碼,在我們的應(yīng)用程序中,我們需要創(chuàng)建多個動物。當(dāng)然,下一步是將邏輯封裝在我們可以在需要創(chuàng)建新動物時(shí)調(diào)用的函數(shù)內(nèi)部。我們將這種模式稱為Functional Instantiation,我們將函數(shù)本身稱為“構(gòu)造函數(shù)”,因?yàn)樗?fù)責(zé)“構(gòu)造”一個??新對象。
功能實(shí)例化function Animal (name, energy) { let animal = {} animal.name = name animal.energy = energy animal.eat = function (amount) { console.log(${this.name} is eating.) this.energy += amount } animal.sleep = function (length) { console.log(${this.name} is sleeping.) this.energy += length } animal.play = function (length) { console.log(${this.name} is playing.) this.energy -= length } return animal } const leo = Animal("Leo", 7) const snoop = Animal("Snoop", 10)
現(xiàn)在,每當(dāng)我們想要創(chuàng)造一種新動物(或者更廣泛地說是一種新的“實(shí)例”)時(shí),我們所要做的就是調(diào)用我們的動物功能,將動物的名字和能量水平傳遞給它。這非常有效,而且非常簡單。但是,你能發(fā)現(xiàn)這種模式的弱點(diǎn)嗎?最大的和我們試圖解決的問題與三種方法有關(guān) - 吃飯,睡覺和玩耍。這些方法中的每一種都不僅是動態(tài)的,而且它們也是完全通用的。這意味著沒有理由重新創(chuàng)建這些方法,正如我們在創(chuàng)建新動物時(shí)所做的那樣。你能想到一個解決方案嗎?如果不是每次創(chuàng)建新動物時(shí)重新創(chuàng)建這些方法,我們將它們移動到自己的對象然后我們可以讓每個動物引用該對象,該怎么辦?我們可以將這種模式稱為功能實(shí)例化與共享方法
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/114120.html
摘要:創(chuàng)建對象的最常用方法是使用花括號,并使用點(diǎn)表示法向?qū)ο筇砑訉傩院头椒ā.?dāng)然,下一步是將邏輯封裝在我們可以在需要創(chuàng)建新動物時(shí)調(diào)用的函數(shù)內(nèi)部。我們將這種模式稱為,我們將函數(shù)本身稱為構(gòu)造函數(shù),因?yàn)樗?fù)責(zé)構(gòu)造一個新對象。 視頻Videohttps://www.youtube.com/watch... 前言 如果不好好的學(xué)習(xí)對象,你就無法在JavaScript中獲得很大的成就。它們幾乎是Java...
摘要:創(chuàng)建對象的最常用方法是使用花括號,并使用點(diǎn)表示法向?qū)ο筇砑訉傩院头椒ā.?dāng)然,下一步是將邏輯封裝在我們可以在需要創(chuàng)建新動物時(shí)調(diào)用的函數(shù)內(nèi)部。我們將這種模式稱為,我們將函數(shù)本身稱為構(gòu)造函數(shù),因?yàn)樗?fù)責(zé)構(gòu)造一個新對象。 視頻Videohttps://www.youtube.com/watch... 前言 如果不好好的學(xué)習(xí)對象,你就無法在JavaScript中獲得很大的成就。它們幾乎是Java...
摘要:初學(xué)者教程系列旨在精選站內(nèi)發(fā)布的,對學(xué)習(xí)本門技術(shù)具有指導(dǎo)意義的文章。是前端開發(fā)者使用的主要編程語言,隨著前端技術(shù)的發(fā)展,這門語言的邊界也得以不斷擴(kuò)展。我們在這里選擇了與相關(guān)的經(jīng)典文章,可以讓大家對如何學(xué)習(xí)這門語言有一些全面的認(rèn)識。 SegmentFault 初學(xué)者教程系列旨在精選站內(nèi)發(fā)布的,對學(xué)習(xí)本門技術(shù)具有指導(dǎo)意義的文章。 JavaScript 是前端開發(fā)者使用的主要編程語言,隨著前...
摘要:設(shè)計(jì)模式是以面向?qū)ο缶幊虨榛A(chǔ)的,的面向?qū)ο缶幊毯蛡鹘y(tǒng)的的面向?qū)ο缶幊逃行┎顒e,這讓我一開始接觸的時(shí)候感到十分痛苦,但是這只能靠自己慢慢積累慢慢思考。想繼續(xù)了解設(shè)計(jì)模式必須要先搞懂面向?qū)ο缶幊蹋駝t只會讓你自己更痛苦。 JavaScript 中的構(gòu)造函數(shù) 學(xué)習(xí)總結(jié)。知識只有分享才有存在的意義。 是時(shí)候替換你的 for 循環(huán)大法了~ 《小分享》JavaScript中數(shù)組的那些迭代方法~ ...
摘要:然而,雖然先生對無所不知,被譽(yù)為世界的愛因斯坦,但他的語言精粹并不適合初學(xué)者學(xué)習(xí)。即便如此,在后面我還是會建議把當(dāng)做補(bǔ)充的學(xué)習(xí)資源。但目前為止,依然是學(xué)習(xí)編程的好幫手。周正則表達(dá)式,對象,事件,閱讀權(quán)威指南第,,,章。 既然你找到這篇文章來,說明你是真心想學(xué)好JavaScript的。你沒有想錯,當(dāng)今如果要開發(fā)現(xiàn)代網(wǎng)站或web應(yīng)用(包括互聯(lián)網(wǎng)創(chuàng)業(yè)),都要學(xué)會JavaScript。而面對泛...
閱讀 1081·2021-09-29 09:35
閱讀 4647·2021-09-22 15:24
閱讀 1454·2021-07-25 21:37
閱讀 2184·2019-08-30 14:17
閱讀 971·2019-08-30 13:56
閱讀 2418·2019-08-29 17:07
閱讀 1264·2019-08-29 12:44
閱讀 2710·2019-08-26 18:26