03學習 JS物件導向筆記

2022-06-19 04:33:07 字數 1801 閱讀 2527

1.原型 (prototypr 原型屬性)

2.繼承

3.原型鏈

----------------------------------

prototypr 原型屬性

constructor 建構函式

----------------------------------

prototypr 原型屬性

為什麼使用原型? 原型可以達到繼承的目的

function person();

person.prototype.name = 'shaozhu';

person.prototype.age = 22;

person.prototype.action = function()

var person1 = new person();//例項化 可以享有裡面的所有屬性和方法

person1.name

person {}

//我們如果列印出person1 看看會是什麼

console.log(person1);

//發現有乙個 __proto__ 沒錯 我們如果要取原型裡面的東西 就要用這個來取值

原型的好處 相同的存在原型裡面 不相同的把它獨立出來

例子 修改例項的屬性 不影響其他例項的屬性

function person()

aa.prototype.action = function()

var aa = new aa("qqq",22);

var bb =new aa("www",23);

console.log(aa.action());//呼叫

bb.action()

"www"

----------------------------------

例子:function aa(name,age,hobby)

aa.prototype.action = function()

var aa = new aa("qqq",22,'寫**');

var bb =new aa("www",23,'搭訕');

console.log(aa.action());

名字:qqq,年齡:22,愛好:寫**

console.log(bb.action());

名字:www,年齡:23,愛好:搭訕

----------------------------------

公共的可以放在原型裡面 這個效果更高!!! 比如 action();

如果公共的不使用原型 多次的例項化之後 可能會出現記憶體的溢位!!

----------------------------------

繼承 !!!!!

繼承有兩種:介面繼承 實現繼承(js 只支援這個!)

function action(){};

action.prototype.cado = function()

function ben(){};

ben.prototype = new action();//繼承 全部都繼承了

var aa = new ben();//例項化 ben

aa.cado();

吃飯 睡覺

先從例項裡面找 例項裡面沒有 然後到原型裡面去找

原型鏈 繼承和繼承之間產生的關係鏈

delete 不能刪除繼承的東西

person1.__proto__.name='ben';//修改原型

總結:原型裡面放公用的 繼承 可以提高效率

JS學習筆記 物件導向

類 物件 類 模子 物件 產品 成品 蛋糕 物件 模子 類 array 類 arr 物件 array.push 錯 arr.push 對 new arr 錯 原型prototype 是加到類上面,而不是物件。混合方式構造物件 方法都是相同的,屬性都是不同的。方法 函式 屬性 變數 用 建構函式 加 ...

JS學習筆記 物件導向基礎

今天溫習了js的物件導向的知識,對這方面的知識做一次總結。首先是要理解物件和類。物件可以理解為乙個具體的實物,比如乙個人。而人有吃飯 睡覺等特性,把具有相同特性的物件進行分類,例如人類。物件和類的關係就是物件是類中某一具體的個體,類是許多具有相同特徵物件的抽象。物件由屬性和方法組成,通常在程式設計中...

03 學習PHP物件導向 this

php物件導向 this this是什麼 先看一下物件和類在記憶體中儲存在 s new saler 建立 s這個物件是通過new saler例項化了乙個物件並且將 s指向了這個物件所在的記憶體中,例項化,只是將類中的屬性都複製到物件的空間中,物件空間中並沒有物件的方法 this在類中的方法成員裡面就...