摘要:在構(gòu)造函數(shù)中用進行聲明私有是指,在外部環(huán)境中不能直接訪問,該屬性方法只能在對象的構(gòu)造函數(shù)內(nèi)訪問。聲明在構(gòu)造函數(shù)里的變量和方法,沒有用到靜態(tài)是指,屬性方法是歸屬于類的,而非實例對象。
什么是Javascript的公有屬性/方法,私有屬性/方法,靜態(tài)屬性/方法,共享屬性/方法?
公有是指,在外部環(huán)境中可以獲取的,可以直接通過實例對象用”.”運算符操作獲得。(在構(gòu)造函數(shù)中用this進行聲明)
私有是指,在外部環(huán)境中不能直接訪問,該屬性/方法只能在對象的構(gòu)造函數(shù)內(nèi)訪問。(聲明在構(gòu)造函數(shù)里的變量和方法,沒有用到this)
靜態(tài)是指,屬性/方法是歸屬于類的,而非實例對象??梢灾苯油ㄟ^類名來調(diào)用得到。
共享是指,實例對象之間,共享屬性和方法,借助向原型對象添加屬性和方法,可以實現(xiàn)。
(雖然都有“公共”的含義,但是可以看出靜態(tài)的和共享的之間的區(qū)別了吧)
為什么把方法寫在prototype中而不寫在構(gòu)造函數(shù)中參考: https://blog.csdn.net/FJ20100...
因為寫在構(gòu)造函數(shù)中更消耗內(nèi)存。寫在構(gòu)造函數(shù)中的話,每次用構(gòu)造函數(shù)new一個對象的話,都會創(chuàng)建一份新的屬性和方法存到內(nèi)存中。而寫在原型對象中就沒有這個問題,對于這個類,只有一個原型對象,因此寫在原型對象之下的方法也不會多次復(fù)制,永遠只有一份。
(如果寫在原型對象中,多個實例調(diào)用這個方法,會有什么問題嗎?比如對同一個對象進行操作?)驗證方法 方法用 ==進行比較,即內(nèi)存地址的比較
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/104257.html
摘要:關(guān)于函數(shù)聲明他的一個重要特征就是函數(shù)聲明提升就是在執(zhí)行代碼之前會先讀取函數(shù)聲明這意味著可以把函數(shù)聲明放到調(diào)用他的語句的后面將聲明放到了后面關(guān)于函數(shù)表達式創(chuàng)建一個匿名函數(shù)然后賦值給一個變量函數(shù)體可以返回一個匿名函數(shù)返回的函數(shù)可以賦值給一個變量 關(guān)于函數(shù)聲明 他的一個重要特征就是函數(shù)聲明提升,就是在執(zhí)行代碼之前會先讀取函數(shù)聲明,這意味著可以把函數(shù)聲明放到調(diào)用他的語句的后面 sayHi();...
面向?qū)ο蟮恼Z言有一個標(biāo)志,即擁有類的概念,抽象實例對象的公共屬性與方法,基于類可以創(chuàng)建任意多個實例對象,一般具有封裝、繼承、多態(tài)的特性!但JS中對象與純面向?qū)ο笳Z言中的對象是不同的,ECMA標(biāo)準(zhǔn)定義JS中對象:無序?qū)傩缘募?,其屬性可以包含基本值、對象或者函?shù)。 我們首選要了解封裝、繼承、多態(tài)又有如何特點 封裝:顧名思義來封裝變量和函數(shù)封裝->特點:高度復(fù)用,降低冗余度,更有利于模塊化編程,能夠為...
摘要:圖片描述缺點是無法實現(xiàn)多繼承可以在構(gòu)造函數(shù)中,為實例添加實例屬性。 對象的方法 Object.assign() 對象可以簡寫 ,如果 key 和 value 相等則可以簡寫 let name = xm; let age = 2; let obj = { name, age, fn(){ // 可以省略函數(shù)關(guān)鍵字和冒號: console.log(2...
摘要:面向?qū)ο笕筇匦跃褪欠庋b繼承和多態(tài),簡單理解,對于貓這種動物,它本身就是一個封裝好的類,你只需要供它吃喝輸入,它就能表現(xiàn)貓的行為輸出,同時它繼承了動物所具有的習(xí)性吃東西等,而不同的貓因為所處環(huán)境或者習(xí)性的不同,可能會有不同的表現(xiàn)和行為,這就 面向?qū)ο笕筇匦跃褪欠庋b繼承和多態(tài),簡單理解,對于貓這種動物,它本身就是一個封裝好的類,你只需要供它吃喝(輸入),它就能表現(xiàn)貓的行為(輸出),同時...
摘要:在中是沒有這樣的關(guān)鍵字的,我們需要這樣做定義在方法內(nèi)也就是內(nèi)部,也可以看作成構(gòu)造函數(shù)的變量,就是私有變量。移動氣球我們需要用到定時器。 什么是JavaScript? 我們可以從幾個方面去說JavaScript是什么: 基于對象 javaScript中內(nèi)置了許多對象供我們使用【String、Date、Array】等等 javaScript也允許我們自己自定義對象 事件驅(qū)動 ...
閱讀 1559·2021-09-22 15:35
閱讀 2035·2021-09-14 18:04
閱讀 918·2019-08-30 15:55
閱讀 2481·2019-08-30 15:53
閱讀 2709·2019-08-30 12:45
閱讀 1228·2019-08-29 17:01
閱讀 2604·2019-08-29 15:30
閱讀 3535·2019-08-29 15:09