欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

理解JavaScript中的對(duì)象

 更新時(shí)間:2020年08月25日 09:56:36   作者:Jason  
這篇文章主要介紹了如何理解JavaScript中的對(duì)象,幫助大家更好的學(xué)習(xí)JavaScript,感興趣的朋友可以了解下

JavaScript中對(duì)象的簡(jiǎn)介

我們知道生活中客觀(guān)存在的一切事物皆為對(duì)象,那在程序中的對(duì)象是什么樣子呢?我們可以將程序中的對(duì)象理解為客戶(hù)端世界中的對(duì)象在一種計(jì)算機(jī)中的一種表示方式.所有的編程語(yǔ)言中提到的對(duì)象其性質(zhì)都是類(lèi)似的,它往往對(duì)應(yīng)內(nèi)存中的一塊區(qū)域,在這個(gè)區(qū)域中存儲(chǔ)對(duì)象的屬性或方法信息。

JavaScript中對(duì)象的創(chuàng)建

基于{}符號(hào)創(chuàng)建對(duì)象

在JS中我們可以直接基于{}定義對(duì)象,在對(duì)象內(nèi)容定義屬性和方法,例如:

在JS中我們可以將對(duì)象理解為用于封裝屬性和方法的一個(gè)結(jié)構(gòu)體,例如

如果需要反復(fù)創(chuàng)建多個(gè)相同結(jié)構(gòu)的對(duì)象時(shí),用{}代碼就很冗余——重復(fù)。也不便于維護(hù)!

基于構(gòu)造函數(shù)創(chuàng)建對(duì)象

假如在JS中我們希望非常方便的定義多個(gè)結(jié)構(gòu)相同,但屬性值不同的對(duì)象,可以直接基于構(gòu)造函數(shù)( 定義同一類(lèi)型多個(gè)對(duì)象的相同屬性結(jié)構(gòu)的特殊函數(shù))進(jìn)行對(duì)象創(chuàng)建,例如:

建議:只要反復(fù)創(chuàng)建多個(gè)相同結(jié)構(gòu)的對(duì)象,都要用構(gòu)造函數(shù)來(lái)創(chuàng)建對(duì)象.

在實(shí)際應(yīng)用中我們盡量不要在構(gòu)造函數(shù)中再去定義函數(shù),例如:

這樣在構(gòu)建對(duì)象時(shí),可能每次都需要開(kāi)辟額外的函數(shù)空間.

JavaScript中的對(duì)象特性

封裝特性

JS中的對(duì)象用于封裝屬性和方法.如圖所示:

繼承特性

JS中為了實(shí)現(xiàn)屬性或方法的可重用性,提供了一種繼承機(jī)制,

這種繼承的方式需要借助Prototype對(duì)象去實(shí)現(xiàn),Prototype對(duì)象是在定義構(gòu)造函數(shù)時(shí)自動(dòng)創(chuàng)建,用于存儲(chǔ)所有共有屬性和方法的一個(gè)對(duì)象,所有通過(guò)此構(gòu)造函數(shù)構(gòu)建的對(duì)象都繼承這個(gè)原型對(duì)象.

構(gòu)造函數(shù)中的原型對(duì)象分析,如圖所示:

原型對(duì)象(ProtoType)對(duì)象的繼承,如圖所示:

在對(duì)象中添加共有屬性,如圖所示:

在對(duì)象中添加共有方法的.如圖所示:

原型鏈?zhǔn)怯啥嗉?jí)父對(duì)象(原型對(duì)象)逐級(jí)繼承形成的鏈?zhǔn)浇Y(jié)構(gòu)。這個(gè)原型鏈保存著一個(gè)對(duì)象可以訪(fǎng)問(wèn)的所有父級(jí)原型對(duì)象,以及這個(gè)對(duì)象可訪(fǎng)問(wèn)到的所有屬性和方法。

多態(tài)特性

多態(tài)一般指同一個(gè)函數(shù)(行為),在不同情況下表現(xiàn)中的不同的狀態(tài)。從應(yīng)用上有兩種形式,分別為重載和重寫(xiě)。

重載的定義:一個(gè)函數(shù),根據(jù)傳入的實(shí)參值不同,執(zhí)行不同的邏輯。

重寫(xiě)的定義:在子對(duì)象中定義一個(gè)和父對(duì)象中成員同名的成員。只要從父對(duì)象繼承來(lái)的東西不好用,就用重寫(xiě)自己的!

在子對(duì)象中定義一個(gè)和父對(duì)象中成員同名的自有成員,例如:

JavaScript內(nèi)置對(duì)象類(lèi)型

對(duì)象類(lèi)型簡(jiǎn)介

JavaScript中對(duì)象的類(lèi)型可以理解為構(gòu)造方法和原型對(duì)象的結(jié)合體,當(dāng)我們需要查看其對(duì)象類(lèi)型時(shí),可以通過(guò)構(gòu)造方法名.

JS中內(nèi)置的對(duì)象類(lèi)型

JS中有11種內(nèi)置對(duì)象類(lèi)型,分別為String, Number, Boolean, Array, Date, RegExp, Math(對(duì)象), Error, Function, Object, global(對(duì)象)

總結(jié)(Summary)

本小節(jié)主要是對(duì)JS中對(duì)象做了簡(jiǎn)介,并通過(guò)實(shí)踐方式分析JS中對(duì)象的創(chuàng)建,對(duì)象特性以及對(duì)象內(nèi)置類(lèi)型。

以上就是理解JavaScript中的對(duì)象的詳細(xì)內(nèi)容,更多關(guān)于JavaScript 對(duì)象的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 基于JS實(shí)現(xiàn)翻書(shū)效果的頁(yè)面切換樣式

    基于JS實(shí)現(xiàn)翻書(shū)效果的頁(yè)面切換樣式

    在項(xiàng)目開(kāi)發(fā)中經(jīng)常遇到翻書(shū)的頁(yè)面切換效果,基于js代碼怎么實(shí)現(xiàn)的呢?今天小編給大家分享基于JS實(shí)現(xiàn)翻書(shū)效果的頁(yè)面切換樣式,需要的朋友參考下吧
    2017-02-02
  • Typescript的三種運(yùn)行方式(小結(jié))

    Typescript的三種運(yùn)行方式(小結(jié))

    這篇文章主要介紹了Typescript的三種運(yùn)行方式,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09
  • clipboard.js使用總結(jié)

    clipboard.js使用總結(jié)

    clipboard.js是一款輕量級(jí)的實(shí)現(xiàn)復(fù)制文本到剪貼板功能的JavaScript插件,本文就詳細(xì)的介紹一下如何使用,感興趣的可以了解一下
    2021-11-11
  • 詳解JS鼠標(biāo)事件中clientX/screenX/offsetX/pageX屬性的區(qū)別

    詳解JS鼠標(biāo)事件中clientX/screenX/offsetX/pageX屬性的區(qū)別

    在熟悉業(yè)務(wù)中播放器功能的時(shí)候,發(fā)現(xiàn)時(shí)間軸上綁定了點(diǎn)擊和拖動(dòng)事件,頻繁遇到了類(lèi)似pageX之類(lèi)的事件屬性,所以本文就來(lái)和大家詳細(xì)聊聊clientX/screenX/offsetX/pageX等屬性的區(qū)別吧
    2024-03-03
  • swiper動(dòng)態(tài)改變滑動(dòng)內(nèi)容的實(shí)現(xiàn)方法

    swiper動(dòng)態(tài)改變滑動(dòng)內(nèi)容的實(shí)現(xiàn)方法

    假設(shè)當(dāng)前顯示的是1,往左滑動(dòng)一個(gè)遞減1,往右滑動(dòng)一個(gè)遞增1。下面通過(guò)實(shí)例代碼給大家講解swiper動(dòng)態(tài)改變滑動(dòng)內(nèi)容的實(shí)現(xiàn)方法,感興趣的朋友一起看看吧
    2018-01-01
  • js中跨域方法原理詳解

    js中跨域方法原理詳解

    這篇文章主要介紹了js中跨域方法原理詳解的相關(guān)資料,需要的朋友可以參考下
    2015-07-07
  • 關(guān)閉頁(yè)面時(shí)window.location事件未執(zhí)行的原因分析及解決方案

    關(guān)閉頁(yè)面時(shí)window.location事件未執(zhí)行的原因分析及解決方案

    最近在做一個(gè)項(xiàng)目的時(shí)候,遇到個(gè)問(wèn)題,就是關(guān)閉頁(yè)面時(shí)window.location事件未執(zhí)行,百思不得其解,度娘上搜了一下才知道具體原因,記錄一下
    2014-09-09
  • javascript 判斷整數(shù)方法分享

    javascript 判斷整數(shù)方法分享

    本文介紹了使用javascript判斷整數(shù)的2種方法中的一種正則判斷,因?yàn)橹鹱峙袛嘈侍拖铝?,有相同需求的小伙伴們參考?/div> 2014-12-12
  • 淺談JavaScript 函數(shù)參數(shù)傳遞到底是值傳遞還是引用傳遞

    淺談JavaScript 函數(shù)參數(shù)傳遞到底是值傳遞還是引用傳遞

    下面小編就為大家?guī)?lái)一篇淺談JavaScript 函數(shù)參數(shù)傳遞到底是值傳遞還是引用傳遞。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2016-08-08
  • bootstrap改變按鈕加載狀態(tài)

    bootstrap改變按鈕加載狀態(tài)

    這篇文章主要介紹了bootstrap改變按鈕加載狀態(tài)的方法,需要的朋友可以參考下
    2014-12-12

最新評(píng)論