原型鏈及繼承的理解 定義函數
function A(name) { // 構造內容(構造函數) this.name = name; /* // 也支持定義方法。但為了性能,不建議在構造里定義方法 this.fn = function(parmas){ // your code } */ }
// 原型鏈 A.prototype.changeName = function(name) { this.name = name; }
// 靜態屬性 A.staticPF = "static12345";繼承 繼承構造函數
function B(name) { // B 繼承 A 的構造函數 也可用apply A.call(this, name); } // console.log(B) var b = new B("ccc"); console.log(b.name); // => ccc繼承靜態屬性
// B 繼承 A 的靜態屬性,查找流程如下 // B.staticPF = >B.__proto__.staticPF => A.staticPF; B.__proto__ = A; console.log(B.staticPF); // => static12345繼承原型鏈
var b = new B("ccc"); // B 繼承 A 的原型鏈, 3種方式,推薦第3種 // B.prototype = A.prototype; // 需要前置在b對象實例化前 // b.__proto__ = A.prototype; // B.prototype.__proto__ = A.prototype; B.prototype.__proto__ = A.prototype; b.changeName("ffffd") // b實例最終繼續了A的changeName方法 console.log(b.name); // => ffffd
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/103164.html
摘要:也就是說,不必在構造函數中添加定義對象信息,而是可以直接將這些信息添加到原型中。子類的屬性,表示構造函數的繼承,總是指向父類。以前,這些原生構造函數是無法繼承的。 面向對象 js是一門基于對象的語言。js中的一切皆對象; console.log(Object.prototype.toString.call(123)) //[object Number] console....
摘要:數組的構造函數是原型鏈的指向與其他除以外的構造函數相同,的也指向頂級原型對象,每一個數組都是的實例,都指向。實例對象查找構造函數原型對象的方法一般會把對象共有的屬性和方法都放在構造函數的原型對象上。 showImg(https://segmentfault.com/img/remote/1460000018998704?w=900&h=506); 閱讀原文 概述 在 JavaScr...
摘要:首先,需要來理清一些基礎的計算機編程概念編程哲學與設計模式計算機編程理念源自于對現實抽象的哲學思考,面向對象編程是其一種思維方式,與它并駕齊驅的是另外兩種思路過程式和函數式編程。 JavaScript 中的原型機制一直以來都被眾多開發者(包括本人)低估甚至忽視了,這是因為絕大多數人沒有想要深刻理解這個機制的內涵,以及越來越多的開發者缺乏計算機編程相關的基礎知識。對于這樣的開發者來說 J...
摘要:之前有朋友問怎么去理解原型和原型鏈的問題。理解原型鏈的小技巧將箭頭視作泛化子類到父類關系那么圖中所有的虛線將構成一個繼承層級,而實線表示屬性引用。原型鏈是實現繼承的重要方式,原型鏈的形成是真正是靠而非。 之前有朋友問怎么去理解原型和原型鏈的問題。這個問題,在面試中,很多同學經常都會遇到。這里給大家講講,方便大家記憶。 JavaScript的特點JavaScript是一門直譯式腳本...
摘要:之前有朋友問怎么去理解原型和原型鏈的問題。理解原型鏈的小技巧將箭頭視作泛化子類到父類關系那么圖中所有的虛線將構成一個繼承層級,而實線表示屬性引用。原型鏈是實現繼承的重要方式,原型鏈的形成是真正是靠而非。 之前有朋友問怎么去理解原型和原型鏈的問題。這個問題,在面試中,很多同學經常都會遇到。這里給大家講講,方便大家記憶。 JavaScript的特點JavaScript是一門直譯式腳本...
閱讀 788·2021-10-09 09:44
閱讀 691·2019-08-30 13:55
閱讀 3152·2019-08-29 15:07
閱讀 3218·2019-08-29 13:09
閱讀 2412·2019-08-29 11:10
閱讀 1288·2019-08-26 14:05
閱讀 3589·2019-08-26 13:57
閱讀 2206·2019-08-23 16:42