⊗jsOpAdNC 44 of 60 menu

ความขัดแย้งของชื่อเมธอดและคุณสมบัติใน OOP ใน JavaScript

ชื่อของคุณสมบัติและเมธอดไม่ควร ซ้ำกัน มันจะทำให้เกิดความขัดแย้ง ลองดูตัวอย่างกัน สมมติว่าเรามีคลาส ต่อไปนี้:

class User { name() { console.log('method'); } }

สร้างออบเจ็กต์ของคลาสนี้:

let user = new User;

เรียกใช้เมธอดของมัน ในขณะที่ ทุกอย่างยังทำงาน:

user.name(); // ทำงาน

และตอนนี้ให้เขียนข้อมูลลงในคุณสมบัติที่ชื่อเดียวกัน จึงลบโค้ดของ เมธอดไป:

user.name = 'str'; user.name(); // ข้อผิดพลาด

เพื่อหลีกเลี่ยงความขัดแย้งดังกล่าว ควรตั้งชื่อเมธอดเป็นคำกริยาเสมอ และตั้งชื่อคุณสมบัติเป็นคำนาม

แก้ไขข้อผิดพลาดที่เกิดขึ้น ในโค้ดต่อไปนี้:

class Employee { constructor(salary) { this.salary = salary; } salary() { return this.salary + '₽'; } }
ไทย
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣTürkmenTürkçeЎзбекOʻzbekTiếng Việt
เราใช้คุกกี้สำหรับการทำงานของเว็บไซต์ การวิเคราะห์ และการปรับเนื้อหาให้เหมาะสมส่วนบุคคล การประมวลผลข้อมูลเกิดขึ้นตาม นโยบายความเป็นส่วนตัว.
ยอมรับทั้งหมด ปรับแต่ง ปฏิเสธ