เราทุกคนจะต้องกินความอ่อนน้อมถ่อมตนเมื่อเรารู้ว่า JS กำลังถูกใช้ในการเขียน:
... เพราะมันดีกว่า
ได้โปรดเถอะ ... ได้ยินฉันหน่อย อย่ายิงผู้ส่งสาร
ถาม Microsoft ว่าเหตุใดจึงสร้าง Windows 8 โดยใช้ JS ในฐานะพลเมืองชั้นหนึ่ง หรือระบบปฏิบัติการมือถือใหม่ของ Mozilla หรือ Rivertrail, PhoneGap, ExtJS หรือ IBM ของ IBM
บริษัท หรือโครงการเหล่านี้จะประสบความสำเร็จหรือไม่หากผู้เชี่ยวชาญไม่พบสิ่งที่ดีกว่าในการนำไปใช้
คำตอบคือ ... พวกเขาทำ เราทำ. ดังนั้นรูปแบบที่นี่ควรชัดเจน: มีวิธีที่ดีกว่า
แต่สิ่งที่ดีกว่าก็คืออัตวิสัยดังนั้นเราต้องเจาะลึกและเปรียบเทียบ อะไรดีกว่า?
มันเริ่มต้นด้วย AJAX ... และมันยังไม่หยุด
ไม่มีการปิดกั้น IO นี่เป็นเรื่องใหญ่และคุ้มค่าที่จะรู้ ใน JS นี่คือรูปแบบการโทรกลับ ปรากฎว่าการใช้การโทรกลับสามารถเปิดใช้งานเซิร์ฟเวอร์ที่ไม่บล็อก: Node.js ~ ประมาณ 8 บรรทัดของรหัส setTimeout () เป็นการโทรกลับ การประมวลผลแบบอะซิงโครนัสแบบเธรดเดี่ยว
มีความยืดหยุ่น อะไร? -Java และ C มีคลาสและอินเตอร์เฟส แต่เรียกว่า object-oriented JavaScript มีวัตถุเท่านั้น แต่มันถูกเรียกว่า ... อย่างอื่น
- การมีวัตถุอย่างเดียวเป็นสิ่งที่ดีสำหรับความยืดหยุ่นเนื่องจากสมาชิกและวิธีการเป็นแบบไดนามิกอย่างเต็มที่ในขณะทำงาน - การถ่ายทอดทางพันธุกรรมไม่น่ากลัว ผู้เชี่ยวชาญบางคนอธิบายว่ามันเป็น object-packpack -JS เป็นมิตรกับข้อผิดพลาด - รหัสสามารถผสมเข้าด้วยกันเพื่อส่งผลให้คอมโพสิต - ส่วนประกอบโดยไม่ต้องใช้ความพยายามมากหรือรู้ ... 'อินเทอร์เฟซ', 'abstraction', 'การสืบทอด', 'encapsulation', 'polymorphism' สิ่งที่ดี แต่เหมือน Nike ใน JS; คุณแค่ทำมัน
ข้อมูลการแปล ด้วย JSON คุณสามารถถ่ายโอนวัตถุจากด้านหน้าไปด้านหลังกลับไปด้านหน้า ไม่มีการแปลข้อมูล XML JSON นั้นง่ายมาก
เส้นโค้งการเรียนรู้ต่ำ มีความเป็นไปได้ที่จะตัดและวางโค้ดที่ซับซ้อนมากจากนั้นทำการดีบักเป็นขั้นตอน ฉันได้ยินเพื่อนร่วมงาน ... 'noobs' แต่มันไม่ใช่แค่สำหรับ noobs
- ปรากฎว่านี่เป็นคุณสมบัติที่ดีมากสำหรับ Rapid Prototyping และไซต์ต่างๆก็โผล่ขึ้นมาทั่วซึ่งใช้ประโยชน์จากสิ่งที่ออกแบบในเบราว์เซอร์และอีกมากมาย รันไทม์การสร้างต้นแบบ ชำระเงิน JSFiddle และ CodePen รวมถึง MicroJS GitHub
Like Transformers, with JS, there is more than meets the eye.
It is a big deal.
อัปเดต: เนื่องจากมีการใช้ JavaScript โพสต์นี้อย่างกว้างขวางในภาษาอื่น ๆ
In Java - check out Nashorn.
In C++ - check out Emscripten, or ASM.
And there are many more.
The big surprise since the original writing of this answer was JS cross-compilation.
It turns out that many languages can be compiled to JS.
And the community is encouraging that... CoffeeScript, Dart, etc.
This is not my specific area of expertise, but it is going on in big ways.
Simply put, we just don't know how the dynamism of JS is going to hash out yet.