การเขียน javascript ในรูปแบบ oop by voratep
May0
oop (Object Oriented Programming)
เป็นหลักการ เขียนโปรแกรมชนิดหนึ่งครับ บางคนอาจจะนึกไม่ออกแต่ถ้า บอกว่า เขียนในรูปแบบของ class กับ object หลายๆคนคงจะนึกออกน่ะครับ
แต่การเขียน javascript ในรูบแบบของ oop นั้นจะมีวิธีการเขียนที่แปลกสักหน่อย ครับ ดังนี้ครับ
รูปแบบการเขียน
จากตัวโครงสร้างการเขียน class เราจะสร้าง class Foo ขึ้นมา โดย
function Foo() {
}
จะเป็นเหมือนการประกาศ class ครับ
ส่วนการสร้าง Constructor จะเป็นการรับค่ามาจาก parameter
ในรูปแบบของ
function Foo(bar) {
// การสร้าง Constructor กับ Attribute
this.bar = bar;
this.baz = ‘baz’; // default value
}
โดย ใช้ this. การสร้าง Attribute ขึ้นมา
และส่วนการสร้าง Method นั้น จะใช้การเขียนแบบนี้ครับ
Foo.prototype.fooBar = function() {
};
ชื่อ class.prototype.ชื่อMethod = function ที่เราจะสร้าง
แต่ ชื่อ class.prototype. นั้นสามารถ ตามด้วย Attribute ได้ แต่ ค่าตัวนั้นจะเป็นค่า ของ class
คือ Object ที่สร้างจาก class นี้จะมีค่า เหมือนกัน เหมือนตัวอย่างนี้ ครับ
var Foo = function (name) { this.name = name; };
Foo.prototype.data = [1, 2, 3];
Foo.prototype.showData = function () { console.log(this.name, this.data); };
var foo1 = new Foo(“foo1″);
var foo2 = new Foo(“foo2″);
foo1.showData(); // “foo1″, [1, 2, 3]
foo2.showData(); // “foo2″, [1, 2, 3]
// ถ้าเราเพิ่ม ค่าลง ( prototype.data )
foo1.data.push(4);
// obj ทั้ง 2 จะเหมือนกัน
foo1.showData(); // “foo1″, [1, 2, 3, 4]
foo2.showData(); // “foo2″, [1, 2, 3, 4]
ประมาณนี้ครับ แต่ถ้าต้องการ แยก class ออกมาอีกไฟล์หนึ่งก็ใช้
module.exports = Foo;
ออกมาครับ
Enjoy this article?
Consider subscribing to our RSS feed!
ไม่มีความเห็น
ยังไม่มีความเห็น