摘要:方式一嚴(yán)謹(jǐn)?shù)谋仨氁付ㄩL(zhǎng)寬調(diào)用方式方式二調(diào)用方式區(qū)別原型對(duì)象和當(dāng)前對(duì)象,記住一個(gè)關(guān)鍵點(diǎn),一個(gè)對(duì)象的原型對(duì)象是在上一級(jí)的既可以看作是對(duì)象,也可以看做是一個(gè)類(lèi)關(guān)鍵字的時(shí)候看成是類(lèi),這里定義其子類(lèi)的原型對(duì)象把看作是一個(gè)類(lèi)對(duì)象調(diào)用方法,如果對(duì)象自身
方式一 嚴(yán)謹(jǐn)?shù)膐op
var Rectangle = function(width, height){//必須要指定長(zhǎng)、寬 this.width = width; this.height = height; }; Rectangle.prototype.area = function(){ return this.width * this.height; }; Rectangle.prototype.girth = function(){ return (this.width + this.height) * 2; }; //調(diào)用方式 var rect = new Rectangle(2, 4); rect.area(); rect.girth();方式二
var rectangle = { create : function(width,height){ this.width = width; this.height = height; }, area : function(){ return this.width * this.height; }, girth : function(){ return (this.width + this.height) * 2; } }; //調(diào)用方式 rectangle.create(2, 4); rectangle.area(); rectangle.girth();區(qū)別原型對(duì)象和當(dāng)前對(duì)象 ,記住一個(gè)關(guān)鍵點(diǎn),一個(gè)對(duì)象的原型對(duì)象是在上一級(jí)的
var Class_me = function(){};//既可以看作是對(duì)象,也可以看做是一個(gè)類(lèi)(new關(guān)鍵字的時(shí)候) Class_me.prototype.aa=function(){alert(23)};//看成是類(lèi),這里定義其子類(lèi)的原型對(duì)象 var object = new Class_me();//把Class_me看作是一個(gè)類(lèi) object.aa();//object對(duì)象調(diào)用aa方法,如果object對(duì)象自身有這個(gè)方法,就會(huì)調(diào)用自身的方法,如果沒(méi)有這個(gè)方法,那么就回去調(diào)用它對(duì)應(yīng)的原型對(duì)象的這個(gè)方法,如果兩個(gè)對(duì)象都沒(méi)有這個(gè)方法,那么就會(huì)報(bào)undefined Class_me.aa();//這個(gè)時(shí)候Class_me是一個(gè)對(duì)象,這個(gè)對(duì)象去調(diào)用aa方法,原理同上,這里回報(bào)undefined的,因?yàn)樗旧頉](méi)有定義aa方法,它對(duì)于的原型對(duì)象Object也沒(méi)有aa方法,Class_me對(duì)象的原型對(duì)象應(yīng)該在它的上一級(jí),也就是new出這個(gè)對(duì)象的那個(gè)類(lèi)所在的那一層
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/85593.html
摘要:關(guān)鍵字描述一般被定義在函數(shù)中使用都會(huì)指向一個(gè)對(duì)象通過(guò)調(diào)用函數(shù)的位置來(lái)判斷當(dāng)前指定的對(duì)象默認(rèn)綁定表示在函數(shù)中使用,在調(diào)用該函數(shù)時(shí),沒(méi)有具體的指向目標(biāo),會(huì)默認(rèn)為指向全局對(duì)象示例代碼定義一個(gè)全局變量定義一個(gè)函數(shù)在函數(shù)調(diào)用時(shí)無(wú)法找到具體的對(duì)象,會(huì)指 this關(guān)鍵字 描述 this 一般被定義在函數(shù)中使用 this 都會(huì)指向一個(gè)對(duì)象 this 通過(guò)調(diào)用函數(shù)的位置來(lái)判斷當(dāng)前指定的對(duì)象 默認(rèn)綁定...
摘要:關(guān)鍵字關(guān)鍵字描述本身沒(méi)有任何含義但它也可以代表任何含義被自動(dòng)定義在所有的函數(shù)作用域中都有一個(gè)共同點(diǎn)它總是要返回一個(gè)對(duì)象指向哪個(gè)對(duì)象不取決于定義在哪它取決于調(diào)用位置注意建議搞不明白時(shí)盡量不要使用否則會(huì)很混亂一定要理解之后使用的基本用法表示在函 this關(guān)鍵字 this關(guān)鍵字描述 this本身沒(méi)有任何含義,但它也可以代表任何含義 this被自動(dòng)定義在所有的函數(shù)作用域中 this都有一個(gè)共...
摘要:高程讀書(shū)筆記第六章理解對(duì)象創(chuàng)建自定義對(duì)象的方式有創(chuàng)建一個(gè)實(shí)例,然后為它添加屬性和方法。創(chuàng)建了自定義的構(gòu)造函數(shù)之后,其原型對(duì)象默認(rèn)只會(huì)取得屬性至于其他方法都是從繼承而來(lái)的。 JS高程讀書(shū)筆記--第六章 理解對(duì)象 創(chuàng)建自定義對(duì)象的方式有創(chuàng)建一個(gè)Object實(shí)例,然后為它添加屬性和方法。還可用創(chuàng)建對(duì)象字面量的方式 屬性類(lèi)型 ECMAScript在定義只有內(nèi)部采用的特性時(shí),描述了屬性的各種特征...
摘要:也就是說(shuō),所有的函數(shù)和構(gòu)造函數(shù)都是由生成,包括本身。如果只考慮構(gòu)造函數(shù)和及其關(guān)聯(lián)的原型對(duì)象,在不解決懸念的情況下,圖形是這樣的可以看到,每一個(gè)構(gòu)造函數(shù)和它關(guān)聯(lián)的原型對(duì)象構(gòu)成一個(gè)環(huán),而且每一個(gè)構(gòu)造函數(shù)的屬性無(wú)所指。 前言 JavaScript 是我接觸到的第二門(mén)編程語(yǔ)言,第一門(mén)是 C 語(yǔ)言。然后才是 C++、Java 還有其它一些什么。所以我對(duì) JavaScript 是非常有感情的,畢...
摘要:面向?qū)ο蟮某绦蛟O(shè)計(jì)理解對(duì)象前言最近在細(xì)讀高級(jí)程序設(shè)計(jì),對(duì)于我而言,中文版,書(shū)中很多地方翻譯的差強(qiáng)人意,所以用自己所理解的,嘗試解讀下??偨Y(jié)如果英語(yǔ)水平足夠好的話(huà),建議看英文原版書(shū)籍或者國(guó)外大師的博客。 JS面向?qū)ο蟮某绦蛟O(shè)計(jì)_理解對(duì)象 前言:最近在細(xì)讀Javascript高級(jí)程序設(shè)計(jì),對(duì)于我而言,中文版,書(shū)中很多地方翻譯的差強(qiáng)人意,所以用自己所理解的,嘗試解讀下。 如有紕漏或錯(cuò)誤,會(huì)非...
摘要:即使抽象類(lèi)里不包含抽象方法,這個(gè)抽象類(lèi)也不能創(chuàng)建實(shí)例抽象類(lèi)可以包含成員變量方法普通方法和抽象方法構(gòu)造器初始化塊內(nèi)部類(lèi)接口枚舉種成分。 抽象類(lèi) 當(dāng)編寫(xiě)一個(gè)類(lèi)時(shí),常常會(huì)為該類(lèi)定義一些方法,這些方法用以描述該類(lèi)的行為方式,那么這些方法都有具體的方法體。但在某些情況下,某個(gè)父類(lèi)只是知道其子類(lèi)應(yīng)該包含怎樣的方法,但無(wú)法準(zhǔn)確地知道這些子類(lèi)如何實(shí)現(xiàn)這些方法。使用抽象方法即可滿(mǎn)足該要求:抽象方法是只有...
閱讀 2583·2021-10-11 10:58
閱讀 1164·2021-09-29 09:34
閱讀 1521·2021-09-26 09:46
閱讀 3847·2021-09-22 15:31
閱讀 744·2019-08-30 15:54
閱讀 1467·2019-08-30 13:20
閱讀 1263·2019-08-30 13:13
閱讀 1495·2019-08-26 13:52