Rumah >hujung hadapan web >tutorial js >Bagaimana untuk Memilih Antara Prototaip dan Penutupan untuk Mencipta Objek Tersuai dalam JavaScript?
Cara Membuat Objek Tersuai dalam JavaScript
JavaScript menyediakan pelbagai pendekatan untuk mencipta objek tersuai. Berikut ialah dua model berbeza:
Cara Prototaip
Model prototaip berasal dari JavaScript. Ia melibatkan penggunaan sifat prototaip bagi fungsi pembina untuk menambah sifat dan kaedah pada contoh:
function Shape(x, y) { this.x = x; this.y = y; } Shape.prototype.toString = function() { return 'Shape at ' + this.x + ', ' + this.y; }; function Circle(x, y, r) { Shape.call(this, x, y); // Invoke base constructor this.r = r; } Circle.prototype = new Shape(); // Inherit prototype Circle.prototype.toString = function() { return 'Circular ' + Shape.prototype.toString.call(this) + ' with radius ' + this.r; };
Kelebihan:
Kelemahan:
Penutupan Cara
Model penutupan mengelakkan warisan dengan menggunakan penutupan untuk menyertakan data dan kaedah khusus contoh:
function Shape(x, y) { var that = this; this.x = x; this.y = y; this.toString = function() { return 'Shape at ' + that.x + ', ' + that.y; }; } function Circle(x, y, r) { var that = this; Shape.call(this, x, y); this.r = r; var _baseToString = this.toString; this.toString = function() { return 'Circular ' + _baseToString.call(that) + ' with radius ' + that.r; }; }; var mycircle = new Circle();
Kelebihan:
Kelemahan:
Atas ialah kandungan terperinci Bagaimana untuk Memilih Antara Prototaip dan Penutupan untuk Mencipta Objek Tersuai dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!