日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

javascript基础教程_JavaScript基础教程(九)对象、类的定义与使用

發(fā)布時間:2024/10/6 54 豆豆
生活随笔 收集整理的這篇文章主要介紹了 javascript基础教程_JavaScript基础教程(九)对象、类的定义与使用 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

對象、類的定義與使用

對象與類是面向?qū)ο蟪绦蛟O(shè)計語言教學(xué)過程中不可避免需要講解的內(nèi)容之一。很多人將兩者混為一談,簡單認(rèn)為對象就是類,類就是對象。實(shí)際上深入分析的話,對象與類的區(qū)別還是較為明顯的。本文主要介紹JavaScript中類與對象的概念區(qū)別及類的定義與使用。


Object對象與Class類

對象與類是面向?qū)ο蟮暮诵?#xff0c;不同教材對對象與類概念進(jìn)行了不同闡述。一般理解為類的實(shí)例化結(jié)果即為對象。實(shí)際上深入分析的話,對象與類的區(qū)別還是較為明顯的。歸納起來,類是對客觀事物的描述與抽象,對象是類的實(shí)例。客觀事物的抽象與描述是指抽取某類事物共同具有的狀態(tài)與行為構(gòu)成類。在程序設(shè)計語言中所抽取的狀態(tài)與行為,即為類的屬性(Attributes)與方法(method)。下圖使用手機(jī)為例對象與類關(guān)系描述。

手機(jī)為例說明對象與類

使用手機(jī)對類與對象說明描述如上所示,其中華為、蘋果、小米手機(jī)等現(xiàn)實(shí)世界中的物品,可直接表示為計算機(jī)中具體的對象。所有的手機(jī)對象抽取出共有的屬性與方法就構(gòu)成了抽象的數(shù)據(jù)類型,我們稱為類。從類到對象的過程稱為實(shí)例化,從對象到類可以理解為抽象與封裝


ECMAScript 5(ES5)類的定義

ECMAScript標(biāo)準(zhǔn)是JavaScript程序語言所遵循的規(guī)則與標(biāo)準(zhǔn),在ECMAScript5及之前標(biāo)準(zhǔn)下的JavaScript語言中沒有提供關(guān)于類Class相關(guān)標(biāo)準(zhǔn)與要求。在該標(biāo)準(zhǔn)下只能通過模擬實(shí)現(xiàn)類。目前使用模擬方法構(gòu)造類方法較多,本文主要介紹兩種常用方法:

1、Object對象原型法

在JavaScript中基本上所有的對象都是Object對象的實(shí)例,都繼承了Object對象的方法與屬性。通過使用Object對象可以創(chuàng)建用戶自定義對象,并且可以通過prototype屬性進(jìn)行對象屬性及方法的設(shè)置。以下以手機(jī)為例進(jìn)行說明。定義一個手機(jī)對象,該對象屬性包括品牌名字、價格兩個屬性,還具有一個輸出顯示手機(jī)品牌價格信息的方法。通過使用對象原型法編寫實(shí)現(xiàn)代碼如下圖:

對象原型法實(shí)現(xiàn)類示例

如上圖所示,我們?yōu)镺bject對象添加了兩個屬性uname與price分別標(biāo)書手機(jī)品牌與價格,添加了兩個方法分別完成賦值與輸出顯示。完成之后對Object進(jìn)行了實(shí)例化操作,huawei與iphone就是實(shí)例化之后的對象。

2、構(gòu)造函數(shù)法

構(gòu)造函數(shù)法相對原型方法較更加容易理解,我們將一個函數(shù)直接實(shí)例化成類的對象,以此實(shí)現(xiàn)對類的模擬操作。如上例所示手機(jī)類及實(shí)例化對象,我們亦可以改用構(gòu)造函數(shù)法進(jìn)行模擬類對象的實(shí)現(xiàn)。主要實(shí)現(xiàn)代碼描述如下:

構(gòu)造函數(shù)實(shí)例化模擬類對象

構(gòu)造函數(shù)實(shí)例化實(shí)現(xiàn)對象創(chuàng)建實(shí)例如上圖所示,使用這種方法我們也可以快速設(shè)計模擬類的實(shí)例化實(shí)現(xiàn)。上例中的huawei與iphone可以看成類的實(shí)例化對象。


ECMAScript 6(ES6)類定義

盡管在ES5中沒有使用class實(shí)現(xiàn)類的定義,但是class作為關(guān)鍵字進(jìn)行了保留。在2015年推出的ES6版本中正式將Class作為對象模板,用于實(shí)現(xiàn)類的定義,盡管這里的Class本質(zhì)上仍然是函數(shù)。使用Class實(shí)現(xiàn)類的定義基本語法描述如下:

Class定義語法

class定義基本語法描述如上圖所示,借助class關(guān)鍵字,我們可以定義類并能夠設(shè)置其屬性與方法。針對前文所舉例手機(jī)類、屬性及方法,我們可以使用class進(jìn)行定義。定義與使用描述如下圖:

JavaScript類的定義與使用

使用Class關(guān)鍵字定義類,使得JavaScript中的類更加符合面向?qū)ο蟪绦蛘Z言要求。從屬性、方法等結(jié)構(gòu)方面與我們真正意義上的類更加接近。


本頭條號長期關(guān)注編程資訊分享;編程課程、素材、代碼分享及編程培訓(xùn)。如果您對以上方面有興趣或代碼錯誤、建議與意見,可在評論區(qū)回復(fù)。更多程序設(shè)計相關(guān)教程及實(shí)例分享,期待大家關(guān)注與閱讀!JavaScript基礎(chǔ)教程系列教程鏈接如下:

JavaScript基礎(chǔ)教程(八)Array數(shù)組對象定義與訪問

JavaScript基礎(chǔ)教程(七)函數(shù)的編寫與使用

JavaScript基礎(chǔ)教程(六)流程控制之循環(huán)語句

JavaScript基礎(chǔ)教程(五)流程控制之條件語句

與50位技術(shù)專家面對面20年技術(shù)見證,附贈技術(shù)全景圖

總結(jié)

以上是生活随笔為你收集整理的javascript基础教程_JavaScript基础教程(九)对象、类的定义与使用的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。