มาพูดถึงรถยนต์กัน
โอ้เดี๋ยวก่อนพวกเราทำไปแล้ว - จำเวลาที่เราเจอกันสักครั้งแล้วเหรอ? เราคุยกันเรื่องรถ ในความเป็นจริงคุณดูเหมือนจะเป็นผู้เชี่ยวชาญในรถยนต์ คุณสามารถอธิบายโดยละเอียดเกี่ยวกับสิ่งที่ถูกผิดและน่าตื่นเต้นเกี่ยวกับการแข่งขัน Formula 1 ล่าสุด คุณรู้ด้วยหัวใจทุกรุ่นของ Lamborghini รวมถึงราคาและการวางจำหน่าย คุณยังมีความคิดที่จะซื้อFerrari 599 GTB Fioranoของคุณเองและประหยัดได้ด้วย (ฉันพนันได้เลยว่าสเต็กมื้อค่ำไม่ได้ช่วยอะไรมากนัก)
ในขณะที่อธิบายความผิดพลาดของโตโยต้าด้วยเสียงที่ยอดเยี่ยมและตื่นเต้นคุณก็กระโดดจากเก้าอี้ของคุณและกรีดร้องขึ้นไปบนอากาศโบกมือให้คุณ: "ประณามเลยฉันเป็นผู้เชี่ยวชาญที่ยอดเยี่ยมในทุกสิ่งที่เกี่ยวข้องกับรถยนต์! ' จะเป็นช่างซ่อมรถยนต์! "
และคุณก็ไป คุณมีการสัมภาษณ์บอสแมนรู้สึกประทับใจเหมือนกับที่ฉันมีความรู้และคุณได้รับการว่าจ้าง ลูกค้ารายแรกที่เข้ามาคลัตช์ของเขาเสีย คุณตรวจสอบมันและไม่รู้จะทำอย่างไร ตามความเป็นจริงคุณไม่มีความคิดจริง ๆ ว่าจะทำตามคำแนะนำที่บอสแมนให้ไว้กับคุณได้อย่างไร คุณถูกไล่ออก
แต่มันจะเป็นไปได้ยังไง! คุณรู้ทุกอย่างเกี่ยวกับรถยนต์! ยกเว้น ... ทุกอย่างเกี่ยวกับรถยนต์ คุณสามารถรู้ได้ว่ารถในฝันของคุณมีเครื่องยนต์ V12 แต่คุณไม่รู้ว่ามันหมายถึงอะไรจริง ๆ
ดังนั้นคุณไม่ใช่ช่างซ่อมรถยนต์จริงๆ - คุณเป็นคนที่กระตือรือร้นในรถยนต์ และจนกว่าคุณจะเรียนรู้วิธีการทำงานของรถยนต์คุณจะยังคงกระตือรือร้น
ตอนนี้ให้ฉันถามคุณ วิธีการ$.fn.text
ทำงานหรือไม่ แล้วมันเกี่ยวกับ$.fn
อะไร? พวกเขาหมายถึงอะไรจริง ๆ ? วิธีการที่ไม่$(something)
กลับยักษ์ thingy มีสิ่งที่และสิ่งที่เป็นที่ thingy ว่า? คุณสามารถทำซ้ำฟังก์ชันการทำงานอย่างน้อยสักหน่อยในทางทฤษฎีได้หรือไม่? คุณสามารถรับมือกับ jQuery ได้หรือไม่?
การพูดว่า "native JavaScript is hard" นั้นเป็นเพียง ... false อันดับแรกและสำคัญที่สุดเนื่องจาก JavaScript เป็นภาษาไม่มีอะไรเกี่ยวข้องกับDOMซึ่งส่วนใหญ่เป็นนามธรรม jQuery ข้อสองเพราะเมื่อคุณเรียนรู้เกี่ยวกับ DOM แล้วคุณสามารถล่องเรือข้ามข้อผิดพลาดข้ามเบราว์เซอร์ที่พบได้บ่อยที่สุด แต่เป็นความลับเล็กน้อย - ทุกอย่างยากในตอนแรก ส่วนยาวเป็นผู้หญิงเลวในชั้นประถมศึกษาปีที่ 5
ในฐานะที่เป็นความคล้ายคลึงที่สองสำหรับคำตอบนี้: jQuery คือการใช้ JavaScript DOM (ไม่ JavaScript ภาษาเพียง DOM) ที่ชอบคือการArray.prototype.forEach
for
มันใช้งานได้ 99% ของคดีทั้งหมด และมันใช้งานได้ดี แต่สำหรับ 1% ที่ไม่ได้ครอบคลุมคุณจำเป็นต้องรู้วิธีใช้การfor
วนซ้ำถ้าเพียงเพื่อการปฏิบัติ คำตอบทั้งหมดนี้ขึ้นอยู่กับด้าน "บริสุทธิ์" ของคำถามและไม่ใช่แม้แต่ด้านเทคนิค (ขนาดของห้องสมุดตัวอย่างและสิ่งอื่น ๆ อีกมากมายตามที่อธิบายไว้ในคำตอบของ Michael Dorrant) เพราะฉันชอบจาวาสคริปต์และเมื่อผู้คนดูเหมือนจะทิ้งมันไว้อย่างไม่ตั้งใจพูดว่า "pah, javascriptians ที่โง่ ๆ " และโบกมือถุงมือสีขาวแฟนซี
หากคุณสามารถยอมรับความจริงที่ว่าคุณจะเป็นคนที่กระตือรือร้นจาวาสคริปต์อยู่เสมอฉันควรจะหยุดใคร แต่ถ้าคุณต้องการเป็นโปรแกรมเมอร์ JavaScript คุณต้องมีความรู้อย่างน้อยเลือกระหว่างการใช้ jQuery (หรือไลบรารีอื่น ๆ ) และไม่ใช้ไลบรารี เรียนรู้ DOM เรียนรู้วิธีใช้งาน เขียนห้องสมุดเล็ก ๆ ของคุณหรือฟังก์ชั่นตัวช่วยบางอย่าง และเมื่อคุณมีความรู้เกี่ยวกับ DOM และคุณเลือกที่จะใช้ jQuery - godspeed ความเกียจคร้านเป็นรางวัลสำหรับผู้ที่ทำงานหนัก