Vanilla JS ยังถือว่าเป็นห้องสมุดหรือไม่?


25

เมื่อไม่นานมานี้ฉันพบว่า VanillaJS (document?) เป็นไลบรารีที่รวมกับเบราว์เซอร์ 99% เท่านั้นและไม่ใช่ JavaScript ดั้งเดิม ในขณะที่เขียน lib ของฉันฉันมักจะหลีกเลี่ยงสิ่งที่เป็นประโยชน์ทั้งหมด libs ส่วนใหญ่ ตอนนี้ฉันมีสามคำถาม:

  1. VanillaJS ยังถือว่าเป็น lib หรือไม่?
  2. มีวิธีทำอะไรกับ DOM ที่ไม่มี VanillaJS หรือไม่?
  3. libs ที่สำคัญนั้นใช้ VanillaJS หรือ native JS (ไม่มีสิ่งของ)

70
วานิลลา JSเป็นเรื่องตลก คุณกำลังดึงขาของเราหรือฉันควรทำอย่างละเอียด?

2
@ สุ่มผู้ใช้ฉันได้รับมันเป็นครั้งที่สองที่ฉันดูหน้า VanillaJS ครั้งแรกที่ฉันคิดว่ามันเป็นห้องสมุดผู้ช่วยอย่างง่ายที่ต่อมากลายเป็น "ส่วนหนึ่งของ JS" เมื่อเบราว์เซอร์เริ่มใช้งานฟังก์ชั่น ดังนั้นฉันจึงไม่สนใจ
Jesvin Jose

1
@aitchnyu แน่นอนสิ่งที่ฉันคิด! ไม่น่าแปลกใจที่การแก้ไขวิกิพีเดียของฉันถูกปฏิเสธ: P
DividedByZero

1
เพื่อไม่ให้มีชื่อเสียงjs ไอ
Neil

1
@baultista IIRC เมื่อฉันอ้างถึง POJO (วัตถุ Java เก่าธรรมดา) ฉันเห็นบางคนพูดเล่นว่ามันเป็นรูปแบบที่ได้รับการตีพิมพ์ แต่มันต้องการชื่อเจ๋ง ๆ เพื่อแข่งขันกับทางเลือกอื่น
Jesvin Jose

คำตอบ:


65

มันเป็นเรื่องตลกหรือค่อนข้างเป็นวิธีที่มีไหวพริบเพื่อให้ได้จุด "vanilla X" หมายถึง "X ในรูปแบบพื้นฐานที่สุด" หรือ "X ไม่มีอะไรพิเศษ" ดังนั้น "Vanilla JS" จึงเป็น JavaScript ตามที่เบราว์เซอร์เปิดเผย VanillaJS เป็น JavaScript ซึ่งรวมถึง DOM, API แบบใหม่ที่หลากหลายและคุณสมบัติภาษาหลัก มันไม่รวมรหัสบุคคลที่สามนั่นคือสิ่งที่ปกติจะเรียกห้องสมุดหรือกรอบ คนที่อยู่เบื้องหลังมันอาจต้องการชี้ให้เห็นข้อดีของการทำสิ่งต่าง ๆ แบบนี้โดยการวางกรอบเช่นการตลาดสำหรับกรอบงานบุคคลที่สาม มีหรืออย่างน้อยก็เคยเป็นแนวโน้มในโลกจาวาสคริปต์ที่จะโยนกรอบในทุกปัญหาโดยไม่คำนึงถึงวิธีการแก้ปัญหาเล็กน้อยใน JavaScript "วานิลลา"


2
ไม่ค่อยมีความหมายเหมือนกันกับ DOM แต่ฉันเข้าใจประเด็นของคุณ การใช้ 'VanillaJS' เพื่อจัดการ DOM เราต้องระวัง gotchas ที่แตกต่างกันทั้งหมดระหว่างการปรับใช้ DOM ต่างๆ หากใช้ jQuery เพื่อจัดการ DOM หนึ่งต้องการเพียงรู้ว่า abstracted DOM ที่ jQuery เปิดเผย
Andrew Hoffman

1
@AndrewHoffman: ความแตกต่างระหว่างการใช้งานไม่ใหญ่เท่าที่เคยเป็น ในขณะนี้ที่ IE ให้ความผิดพลาดเกี่ยวกับมาตรฐานใคร ๆ ก็สามารถเขียนโค้ดที่เข้ากันได้กับเบราว์เซอร์ในปัจจุบัน
cHao

6
เอ็นจิ้น JavaScript (v8, spidermonkey, จักระ) ไม่รวม DOM DOM จะถูกเพิ่มโดยสภาพแวดล้อมของเบราว์เซอร์
หยุดทำร้ายโมนิก้า

6
ตลกดีในหัวข้อนี้: needsmorejquery.com
Almo

2
@RandomUser DOM api ไม่ได้เป็นส่วนหนึ่งของภาษา Javascript เป็นมาตรฐาน W3C ที่เบราว์เซอร์ที่เข้ากันได้ควรใช้งาน ตัวอย่างเช่นดูลิงก์นี้ซึ่งพวกเขากำหนดว่า Element คืออะไร: w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/ …และลิงค์นี้ซึ่งพวกเขากำหนดว่า DOM ควรเปิดเผยอย่างไรใน Javascript: w3.org/TR/2004/REC-DOM-Level-3-Core-20040407//
พอล
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.