구조 함수를 빌려 비원형을 계승하다
2997 단어 구조 함수
function Article() {
this.tag = ["js", "html"];
}
var article = new Article();
var Blogpost = function () {};
Blogpost.prototype = article;
var blog = new Blogpost();
var Page = function() {
Article.call(this, arguments);
};
var page = new Page();
blog.tag.push("aa");
page.tag.push("bb");
console.log(article);
Object {tag: Array[3]}
tag: Array[3]
__proto__: Array[0]
__proto__: Article
constructor: function Article() {
__proto__: Object
블로그와article는 같은 태그 인용입니다.같은 실례입니다,article.
Blogpost를prototype = new Article();다시 new. 그럼 실례는 공유하지 않겠습니다.
new의 적합성, 구조 함수의 새로운 실례,prototype는 공유됩니다.아래와 같다
function Tree (x) {
this.value = x;
}
Tree.prototype = {
constructor: Tree,
children: [],
addChild: function(x) {
this.children.push(x);
}
}
var tree1 = new Tree(1);
tree1.addChild(1);
var tree2 = new Tree(2);
tree2.addChild(2);
console.log (tree1.children);//[1,2]
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
구조 함수를 빌려 비원형을 계승하다Object {tag: Array[3]} tag: Array[3] 0: "js" 1: "html" 2: "aa" length: 3 __proto__: Array[0] __proto__: Article construc...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.