<ภาษาสคริปต์ = "จาวาสคริปต์">
ฟังก์ชั่นวงกลม (รัศมี)
{//ฟังก์ชันนี้กำหนดคลาสเอง r ต่อไปนี้เป็นตัวแปรอินสแตนซ์ที่กำหนดและเริ่มต้นโดยตัวสร้าง
นี่.r=รัศมี;
-
//แอตทริบิวต์นี้เป็นตัวแปรคลาสซึ่งเป็นแอตทริบิวต์ของตัวสร้าง
วงกลม PI=3.14159;
พื้นที่ฟังก์ชั่น ()
{//แน่นอนว่านี่เป็นสูตรคำนวณพื้นที่วงกลม
กลับ this.PI * this.r * this.r;
-
// ด้านล่างนี้เราทำให้มันเป็นวิธีอินสแตนซ์โดยการกำหนดฟังก์ชันให้กับวัตถุทรงกลมของตัวสร้าง
//เพื่อให้เข้ากันได้กับ Navigator3 เราต้องสร้างและละทิ้งวัตถุก่อนที่จะสร้างวัตถุต้นแบบ
นิวเซอร์เคิล(0);
วงกลม.ต้นแบบ.พื้นที่=พื้นที่;
//ต่อไปนี้เป็นอีกฟังก์ชันหนึ่งที่เปรียบเทียบพารามิเตอร์สองตัวและส่งกลับค่าที่ใหญ่กว่า
functioncircel_max(ก,ข)
-
ถ้า(ar > br)
กลับ;
อื่น
กลับข;
-
//เนื่องจากฟังก์ชันนี้เปรียบเทียบวัตถุสองชิ้น จึงไม่สมเหตุสมผลที่จะถือว่ามันเป็นการดำเนินการกับวิธีอินสแตนซ์ Circel เดียว
//แต่เราไม่ต้องการที่จะกลายเป็นฟังก์ชันอิสระ ดังนั้นเราจึงกำหนดให้มันเป็น Constructor และทำให้มันเป็น Class Method
circel.max=circel_max;
//โค้ดต่อไปนี้ใช้ช่องต่างๆ ของวงกลม
var c=new circel(1.0); //สร้างอินสแตนซ์ของคลาส circel
cr=2.2; //ตั้งค่าตัวแปร r ของอินสแตนซ์
var a=c.area(); //เรียกเมธอดพื้นที่ของอินสแตนซ์
var x=Math.exp(circel.PI); //ใช้ตัวแปร PI ในการคำนวณของเราเอง
var d=new circel(1.2); //สร้าง circel อื่น
var big=circel.max(c,d);//ใช้วิธีคลาส circel.max
</สคริปต์>
ไฟล์ JScript.js
/**//* ไฟล์ JScript จำนวนเชิงซ้อนคือผลรวมของจำนวนจินตภาพและจำนวนจินตภาพ จำนวนจินตภาพ i คือรากที่สองของ -1
*/
/**//*ขั้นตอนแรกในการกำหนดคลาสคือการกำหนด Constructor ของคลาส ตัวสร้างที่ผ่านการรับรองจะเริ่มต้นฟังก์ชันอินสแตนซ์ทั้งหมดของอ็อบเจ็กต์ คุณลักษณะเหล่านี้คือ "ตัวแปรสถานะ" หลักที่เปิดใช้งานแต่ละอินสแตนซ์ของ ชั้นเรียนที่จะโต้ตอบกันไม่เหมือนกัน
*/
ฟังก์ชั่น JScript (จริง, img)
-
this.x=real;//ส่วนจริง
this.y=img;//ส่วนที่เป็นจินตภาพ
}
/**//*ขั้นตอนที่สองในการกำหนดคลาสฟังก์ชันคือการกำหนดวิธีการอินสแตนซ์ (หรือคุณลักษณะอื่น ๆ ) ในวัตถุต้นแบบของตัวสร้าง
คุณสมบัติใด ๆ ที่กำหนดโดยวัตถุนี้จะได้รับการสืบทอดโดยอินสแตนซ์ทั้งหมดของคลาสนี้ โปรดทราบว่าวิธีการอินสแตนซ์ดำเนินการกับคำหลักนี้โดยปริยาย
*/
//ส่งกลับขนาดของจำนวนเชิงซ้อนซึ่งกำหนดเป็นระยะทางจากจุดกำเนิด (0,0) ไปยังระนาบเชิงซ้อน
JScript.prototype.magnitude=function()
-
กลับ Math.sqrt(this.x * this.x + this.y * this.y);
-
//คืนค่าตรงข้ามของจำนวนเชิงซ้อน
JScript.prototype.negative=ฟังก์ชั่น()
-
ส่งคืน JScript ใหม่ (-this.x,-this.y);
-
// แปลงวัตถุ JScript ให้เป็นสตริงอย่างมีประสิทธิภาพ นี่จะเป็นฟังก์ชันที่เรียกเมื่อใช้วัตถุ JScript เป็นสตริง
JScript.prototype.toString=function()
-
กลับ "{"+ this.x +","+ this.y +"}";
-
//ส่งคืนส่วนที่แท้จริงของจำนวนเชิงซ้อน ฟังก์ชันนี้เรียกว่าเมื่อประมวลผลวัตถุ JScript เป็นค่าดั้งเดิม
JScript.prototype.valueOf() {return this.x;};
/**//*ขั้นตอนที่สามในการกำหนดคลาสคือการกำหนดวิธีการเรียน
ค่าคงที่และตัวแปรคลาสอื่นๆ เป็นคุณสมบัติของตัวสร้างฟังก์ชันเอง (แทนที่จะเป็นคุณสมบัติของวัตถุต้นแบบของตัวสร้าง)
โปรดทราบว่าวิธีการคงที่ไม่ได้ใช้คำสำคัญนี้เนื่องจากดำเนินการกับพารามิเตอร์เท่านั้น
-
//คำนวณผลรวมของจำนวนเชิงซ้อนสองตัวแล้วส่งคืนผลลัพธ์
JScript.add()=ฟังก์ชั่น(a,b)
-
ส่งคืน JScript ใหม่ (ax + bx ,ay + by);
-
//ลบจำนวนเชิงซ้อนหนึ่งจำนวนออกจากจำนวนเชิงซ้อนอื่นแล้วส่งคืนผลลัพธ์
JScript.subtract()=ฟังก์ชั่น(a,b)
-
ส่งคืน JScript ใหม่ (ax - bx, ay - by);
-
//คำนวณผลคูณของจำนวนเชิงซ้อนสองตัวแล้วส่งคืนผลลัพธ์
JScript.multiply()=ฟังก์ชั่น(a,b)
-
ส่งคืน JScript ใหม่ (ax * bx - ay * by , ax * bx + xy * by);
};
/**//*ต่อไปนี้เป็นพหูพจน์ที่กำหนดไว้ล่วงหน้าที่มีประโยชน์ ซึ่งถูกกำหนดให้เป็นตัวแปรคลาสเพื่อให้สามารถใช้เป็นค่าคงที่ได้ (โปรดทราบว่าจริงๆ แล้วมันไม่ใช่แบบอ่านอย่างเดียว)
*/
JScript.zero=JScript ใหม่ (0,0);
JScript.one=JScript ใหม่ (1.0);
JScript.i=JScript ใหม่ (0.1);