JavaScript學習總結1

2021-09-07 05:08:29 字數 1550 閱讀 2419

/***我是切割線 的開始***/

//利用prototype屬性能夠加入公有屬性和方法

function myconstructor2(); //宣告建構函式,能夠使用物件字面量語法來向prototype屬性中加入全部公有成員

myconstructor2.prototype=,

methodb:function(){}

}var myconstrustor=new myconstructor2(); //宣告物件

//alert(myconstrustor.methoda());

var myconstrustor1=new myconstructor2(); //宣告物件

var myconstrustor2=new myconstructor2(); //宣告物件

alert("原型類測試結果="+(myconstrustor1.propertyb === myconstrustor2.propertyb));

alert("建構函式測試結果="+(myconstrustor1.a === myconstructor2.a));

/***我是切割線 的結束***/

function member(name, ***)

function display()

var papa = new member("楊巨集文", "男生");

var mama = new member("黃雅玲", "女生");

var doggy = new member("奇 奇", "寵物狗");

papa.display();

mama.display();

doggy.display();

/*

*/

總結1. 在建構函式中定義的屬性。每乙個例項都有乙個副本,互不影響。可是在prototype上定義的屬性,在全部的例項中共享同乙個屬性。對屬性的改變會影響到全部的例項。

從上面總結的觀點來看。假設要模擬物件導向,那麼屬性最好定義在建構函式中,而方法最好定義在

prototye

中,否則每乙個例項的方法都占領一塊記憶體,太浪費了。 2

.從上面知道了js中也有例項屬性也有靜態屬性。但終於的目的是為了更好的了解js中的繼承,根據物件導向的思想,我們定義乙個類,是為了例項化,使例項能夠呼叫類中定義的屬性、方法。因此能夠這麼說除非為了共享乙個全域性屬性,普通情況下我們都應該定義例項屬性、方法,這樣類的例項就能夠進行各種呼叫操作。承上啟下,從源**能夠看出定義例項屬性有2中方式,一種定義在建構函式中,一種是建構函式的prototype上,究竟應該使用哪一種呢。或者那種方式更好?

4.能夠總結出幾條規律:

1:當例項本身定義了屬性。使用本身屬性(能夠使用

hasownproperty

進行推斷);

2:假設例項本身未定義。就到建構函式中去找;

3:假設建構函式也沒有,就到建構函式的prototype的例項物件上去找。

4:假設prototype的例項物件沒有,就到其建構函式去找;

5:如此反覆,一直到跟物件object中,沒找到就報undefined錯誤。

JavaScript學習總結1

我是切割線 的開始 利用prototype屬性能夠加入公有屬性和方法 function myconstructor2 宣告建構函式,能夠使用物件字面量語法來向prototype屬性中加入全部公有成員 myconstructor2.prototype methodb function var myco...

JavaScript 學習總結

初學起來覺得知識點很多很雜,很多框架的構建都加入了自己的主觀色彩,沒有完全按照教程的來總結,所以難免有些地方看起來會很奇怪。剛開始都不是完美的,慢慢來,不斷地去完善自己。基本變數型別 4種 複雜變數型別 2種 typeof 檢視變數型別 定義乙個物件 var person 清空乙個物件 var pe...

javascript學習筆記1

1 如何定義乙個物件,兩種方法。var car1 var car2 new object car2.money 10000 car2.color blue car2.getcolor function function stringbuffer this.array.push str stringb...