Rumah >hujung hadapan web >tutorial js >Apakah Cara Prototaip dan Penutupan untuk Mencipta Objek Tersuai dalam JavaScript?
Mencipta Objek Tersuai
Terdapat dua cara utama untuk buat objek tersuai dalam JavaScript: cara prototaip dan penutupan cara.
Cara Prototaip
Dengan kaedah ini, sifat dan kaedah objek ditakrifkan pada prototaipnya. Contoh berikut mencipta objek Shape dan objek Bulatan yang mensubkelaskan Shape:
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 class constructor this.r = r; } Circle.prototype = new Shape(); // Create prototype inheritance link Circle.prototype.toString = function() { return 'Circular ' + Shape.prototype.toString.call(this) + ' with radius ' + this.r; };
Cara Penutupan
Kaedah ini tidak menggunakan warisan. Sebaliknya, setiap kejadian mempunyai salinan sifat dan kaedahnya sendiri.
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); // Invoke base class constructor this.r = r; var _baseToString = this.toString; this.toString = function() { return 'Circular ' + _baseToString.call(that) + ' with radius ' + that.r; }; };
Kebaikan dan Keburukan
Cara Prototaip
Cara Penutupan
Memilih Kaedah yang Betul
Pilihan bergantung pada keperluan khusus projek. Untuk hierarki objek besar dengan pelbagai peringkat warisan, prototaip mungkin lebih disukai. Untuk objek ringkas dan bebas, cara penutupan selalunya lebih mudah.
Atas ialah kandungan terperinci Apakah Cara Prototaip dan Penutupan untuk Mencipta Objek Tersuai dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!