บางคนจะบอกคุณว่าการเพิ่ม ต้นแบบ ให้กับ JavaScript Native เป็นสิ่งที่ชั่วร้าย ตัวอย่างเช่น:
String.prototype.format = function(format, replacements) {
...
};
ตอนนี้สำหรับผู้ที่เห็นด้วยกับสิ่งนั้น (ถ้าคุณไม่ทำ ไม่ต้องตอบกลับด้วยคำตอบ ความคิดเห็นของคุณคือ N/A นี่ไม่ใช่การสนทนาเกี่ยวกับต้นแบบ) กำลังเพิ่มวิธี static ให้กับชาวพื้นเมืองอย่างเท่าเทียมกัน ความชั่วร้าย? (จนบัดนี้และต่อจากนี้ไป "คงที่" หมายถึงเพียงวิธีการที่บริบทไม่ใช่อินสแตนซ์)
ตัวอย่างเช่น เมื่อพิจารณาว่าการสร้าง String.prototype.format
นั้นชั่วร้าย การเพิ่มมันเป็น static ถือเป็นแนวทางปฏิบัติที่ยอมรับได้หรือไม่
String.format = function(format, replacements) {
...
};
การขยายเนทีฟด้วยวิธีคงที่มีความแตกต่างอย่างไรเกี่ยวกับแนวทางปฏิบัติที่ดีที่สุดมากกว่าการขยายเนทีฟด้วยต้นแบบ ไม่ว่าคุณจะต่อต้านการขยาย Native แต่อย่างใด หรือคุณไม่มีใครในค่ายที่ยอมรับส่วนขยาย static ในขณะที่ prototypal ไม่เป็นที่ยอมรับ