Java script มีไว้เพื่ออะไร Javascript มีไว้ทำอะไรและทำหน้าที่อะไร? ตัวอย่าง. ภาษาโปรแกรมทางเลือก

ภาษาการเขียนโปรแกรม JavaScript เป็นภาษาสคริปต์เชิงวัตถุที่พัฒนาโดย Netscape Communications ภายใต้ชื่อ LiveScript แต่ต่อมาเปลี่ยนชื่อเป็น "JavaScript" และมีไวยากรณ์ที่ใกล้เคียงกับ Java ของ Sun Microsystems ต่อมา JavaScript ได้รับมาตรฐานโดย ECMA ภายใต้ชื่อ ECMAScript Microsoft เรียกเวอร์ชันของตนว่า JScript

การเปลี่ยนชื่อจาก LiveScript เป็น JavaScript เกิดขึ้นในช่วงเวลาเดียวกับที่ Netscape รวมการรองรับเทคโนโลยี Java ในเบราว์เซอร์ Netscape Navigator การเปลี่ยนแปลงนี้ทำให้เกิดความสับสนอย่างมากในใจของผู้ที่เรียนเขียนโปรแกรมสำหรับผู้เริ่มต้น ไม่มีการเชื่อมต่อที่แท้จริงระหว่าง Java และ JavaScript ความคล้ายคลึงกันเริ่มต้นและสิ้นสุดด้วยไวยากรณ์ที่คล้ายกันและความจริงที่ว่าทั้งสองภาษามีการใช้กันอย่างแพร่หลายบนอินเทอร์เน็ต

JavaScript เป็นภาษาสคริปต์เชิงวัตถุที่โต้ตอบผ่านอินเทอร์เฟซที่เรียกว่า Document Object Model (DOM) พร้อมเนื้อหาที่สามารถดำเนินการบนฝั่งเซิร์ฟเวอร์ (เว็บเซิร์ฟเวอร์) และบนฝั่งไคลเอ็นต์ในเว็บเบราว์เซอร์ของผู้ใช้เมื่อดูหน้าเว็บ เว็บไซต์หลายแห่งใช้เทคโนโลยี JavaScript ฝั่งไคลเอ็นต์เพื่อสร้างแอปพลิเคชันเว็บแบบไดนามิกที่ทรงพลังในการเขียนโปรแกรมสำหรับหุ่นจำลอง สามารถใช้ Unicode และสามารถใช้พลังและความแข็งแกร่งได้ การแสดงออกปกติ(ซึ่งเปิดตัวในเวอร์ชัน 1.2 ของ Netscape Navigator 4 และ อินเทอร์เน็ตเอ็กซ์พลอเรอร์ 4) นิพจน์ JavaScript ที่เป็นสตริงสามารถดำเนินการได้โดยใช้ฟังก์ชัน EVAL

หนึ่งในความท้าทายหลักสำหรับ JavaScript คือฟังก์ชันเล็กๆ ที่ฝังอยู่ หน้า HTMLและอนุญาตให้คุณโต้ตอบกับ DOM จากเบราว์เซอร์เพื่อดำเนินการ งานบางอย่างซึ่งไม่สามารถทำได้ในรูปแบบ HTML แบบคงที่ เช่น การเปิดหน้าต่างใหม่, ตรวจสอบค่าที่ป้อนลงในแบบฟอร์ม, การเปลี่ยนรูปภาพเมื่อเลื่อนเคอร์เซอร์ของเมาส์ เป็นต้น น่าเสียดายที่การเขียนฟังก์ชันดังกล่าวค่อนข้างน่าเบื่อเนื่องจากเบราว์เซอร์ไม่ได้มาตรฐาน เบราว์เซอร์ที่แตกต่างกันอาจสร้างวัตถุหรือวิธีการเขียนสคริปต์ที่แตกต่างกัน ดังนั้นคุณจึงมักจะต้องเขียนเวอร์ชันที่แตกต่างกัน ฟังก์ชันจาวาสคริปต์สำหรับเบราว์เซอร์ต่าง ๆ แต่ไม่สะดวกนักเมื่อเรียนรู้พื้นฐานของการเขียนโปรแกรม

JavaScript / ECMAScript ได้รับการสนับสนุนโดยเอ็นจิ้นเช่น:

  • แรด
  • ลิงแมงมุม

สิ่งแวดล้อม

จำเป็นต้องมีความคิดเห็นมาร์กอัปเพื่อให้แน่ใจว่าโค้ดไม่แสดงเป็นข้อความในเบราว์เซอร์ที่ไม่รู้จัก . แท็กในเอกสาร XHTM/XML จะไม่ทำงานหากมีการใส่เครื่องหมายความคิดเห็นไว้ เบราว์เซอร์สมัยใหม่ที่รองรับ XHTML และ XML ได้รับการออกแบบมาอย่างดีพอที่จะจดจำได้ ดังนั้นโค้ดในเอกสารเหล่านี้จึงยังไม่มีการใส่ข้อคิดเห็น

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

องค์ประกอบของภาษา

ตัวแปร

โดยปกติแล้วตัวแปรจะถูกพิมพ์แบบไดนามิก ตัวแปรถูกกำหนดโดยการกำหนดค่าให้กับตัวแปรเหล่านั้น หรือใช้ตัวดำเนินการ "var" ตัวแปรที่ประกาศนอกฟังก์ชันจะอยู่ในขอบเขต "สากล" ซึ่งมองเห็นได้ทั่วทั้งหน้าเว็บ ตัวแปรที่ประกาศภายในฟังก์ชันจะอยู่ในขอบเขตของฟังก์ชันนั้น หากต้องการส่งผ่านตัวแปรจากหน้าหนึ่งไปยังอีกหน้าหนึ่ง นักพัฒนาซอฟต์แวร์สามารถตั้งค่า "คุกกี้" หรือใช้เฟรมหรือหน้าต่างที่ซ่อนอยู่ พื้นหลังเพื่อการจัดเก็บของพวกเขา

โครงสร้างข้อมูล

ประเภทหลักคือโครงสร้างข้อมูลอาเรย์แบบเชื่อมโยงที่คล้ายกับแฮชในภาษาการเขียนโปรแกรม Perl หรือพจนานุกรม Python, Postscript และ Smalltalk

องค์ประกอบสามารถเข้าถึงได้ด้วยตัวเลขหรือชื่อที่เกี่ยวข้อง (หากได้กำหนดไว้) ดังนั้น สำนวนต่อไปนี้อาจจะเทียบเท่ากันทั้งหมด:

อาร์เรย์ของฉัน,
myArray.north,
myArray["ทิศเหนือ"].

การประกาศอาร์เรย์

MyArray = อาร์เรย์ใหม่ (365);

อาร์เรย์ถูกนำมาใช้เพื่อให้เฉพาะองค์ประกอบบางส่วน (ไม่ว่าง) เท่านั้นที่จะใช้หน่วยความจำ โดยจะ "ปล่อยอาร์เรย์" หากเราตั้งค่า set myArray = "something there" และ myArray = "some else there" แสดงว่าเราได้ใช้พื้นที่สำหรับสององค์ประกอบนี้เท่านั้น

วัตถุ

JavaScript มีออบเจ็กต์ในตัวหลายประเภท ได้แก่ Object, Array, String, Number, Boolean, Function, Date และ Math ออบเจ็กต์อื่นๆ เป็นของออบเจ็กต์ DOM (หน้าต่าง แบบฟอร์ม ลิงก์ ฯลฯ)

ด้วยการกำหนดฟังก์ชันคอนสตรัคเตอร์ คุณสามารถกำหนดอ็อบเจ็กต์ได้ JavaScript เป็นภาษาเชิงวัตถุที่ใช้ต้นแบบ คุณสามารถเพิ่มคุณสมบัติและวิธีการเพิ่มเติมให้กับแต่ละอ็อบเจ็กต์ได้หลังจากที่ถูกสร้างขึ้นแล้ว เมื่อต้องการทำเช่นนี้ คุณสามารถใช้คำสั่งต้นแบบสำหรับอินสแตนซ์ทั้งหมดของวัตถุชนิดใดชนิดหนึ่งโดยเฉพาะได้

ตัวอย่าง: การสร้างวัตถุ
// ฟังก์ชันตัวสร้าง

ฟังก์ชัน MyObject(attributeA, คุณลักษณะB) ( this.attributeA = คุณลักษณะ A this.attributeB = คุณลักษณะB )
// สร้างวัตถุ
obj = MyObject ใหม่ ("สีแดง", 1,000)

// เข้าถึงแอตทริบิวต์ของวัตถุ
การแจ้งเตือน (obj.attributeA)

// เข้าถึงแอตทริบิวต์ที่มีการกำหนดอาเรย์แบบเชื่อมโยง
การแจ้งเตือน (obj ["attributeA"])

ลำดับชั้นของวัตถุสามารถทำซ้ำได้ใน JavaScript ตัวอย่างเช่น:

Function Base() ( this.Override = _Override; this.BaseFunction = _BaseFunction; function _Override() ( alert("Base::Override()"); ) function _BaseFunction() ( alert("Base::BaseFunction()" ); ) ) ฟังก์ชั่น Derive() ( this.Override = _Override; function _Override() ( alert("Derive::Override()"); ) ) Derive.prototype = new Base(); d = ได้มาใหม่ (); d.แทนที่(); d.BaseFunction();

เป็นผลให้เราปรากฏบนหน้าจอ: Derive::Override() Base::BaseFunction()

คำแนะนำการควบคุม
ถ้า ... else if (เงื่อนไข) ( คำสั่ง )
รอบ
ในขณะที่ (เงื่อนไข) ( คำสั่ง ) ทำ ... ในขณะที่ทำ ( คำสั่ง ) ในขณะที่ (เงื่อนไข); สำหรับการวนซ้ำสำหรับ (; ; ) ( คำสั่ง ) สำหรับการวนซ้ำ ... ใน
การวนซ้ำนี้จะผ่านคุณสมบัติทั้งหมดของวัตถุ (หรือองค์ประกอบในอาร์เรย์)
สำหรับ (ตัวแปรในวัตถุ) ( คำสั่ง )

โอเปอเรเตอร์การเลือก
สวิตช์ (การแสดงออก) ( case label1: คำสั่ง; break; case label2: คำสั่ง; แบ่ง; ค่าเริ่มต้น: คำสั่ง; )

ฟังก์ชั่น
เนื้อความของฟังก์ชันมีอยู่ใน (เนื้อความสามารถเว้นว่างได้) และรายการอาร์กิวเมนต์จะแสดงอยู่ภายใน () ตามชื่อฟังก์ชัน ฟังก์ชันสามารถคืนค่าหลังการดำเนินการได้

ฟังก์ชั่น(arg1, arg2, arg3) ( คำสั่ง; ส่งคืนนิพจน์; )

ตามตัวอย่าง ลองดูฟังก์ชันที่ใช้อัลกอริทึมตัวหารร่วมมากสุดของยุคลิด:

ฟังก์ชัน gcd(a, b) ( while (a != b) ( if (a > b) ( a = a - b; ) else ( b = b - a; ) ) return a; )

จำนวนอาร์กิวเมนต์เมื่อเรียกใช้ฟังก์ชันที่กำหนดไม่จำเป็นต้องระบุอาร์กิวเมนต์มากเท่ากับที่ระบุไว้เมื่อมีการประกาศฟังก์ชัน ในฟังก์ชัน อาร์กิวเมนต์ยังสามารถเข้าถึงได้ผ่านอาเรย์อาร์กิวเมนต์

แต่ละฟังก์ชันเป็นตัวอย่างของฟังก์ชัน ซึ่งเป็นประเภทพื้นฐานของออบเจ็กต์ สามารถสร้างและกำหนดฟังก์ชันได้เหมือนกับออบเจ็กต์อื่นๆ:

Var myFunc1 = new Function("alert("Hello")"); วาร์ myFunc2 = myFunc1; myFunc2();

ผลลัพธ์บนหน้าจอ:

ปฏิสัมพันธ์ของผู้ใช้

การโต้ตอบกับผู้ใช้ส่วนใหญ่จะกระทำโดยใช้รูปแบบ HTML ซึ่งสามารถเข้าถึงได้ผ่าน HTML DOM อย่างไรก็ตามก็มีบ้างเช่นกัน การเยียวยาง่ายๆการสื่อสารกับผู้ใช้:

กล่องโต้ตอบการแจ้งเตือน
ยืนยันกล่องโต้ตอบ
เส้นโต้ตอบ
แถบสถานะ
คอนโซล

องค์ประกอบข้อความอาจเป็นแหล่งที่มาของเหตุการณ์ต่างๆ ซึ่งสามารถทริกเกอร์การดำเนินการได้หากมีการลงทะเบียนตัวจัดการเหตุการณ์ EMCAScript ใน HTML ฟังก์ชันตัวจัดการเหตุการณ์เหล่านี้มักถูกกำหนดให้เป็นฟังก์ชันที่ไม่ระบุชื่อโดยตรงในแท็ก HTML

JavaScript® (มักเรียกสั้น ๆ ว่า JS) เป็นภาษาโปรแกรมที่ตีความซึ่งออกแบบมาเพื่อโต้ตอบกับหน้าเว็บ JavaScript ทำงานบนฝั่งไคลเอ็นต์ของอินเทอร์เน็ต และใช้เพื่อตั้งโปรแกรมว่าหน้าเว็บจะทำงานอย่างไรเมื่อมีเหตุการณ์บางอย่างเกิดขึ้น

จาวาสคริปต์คืออะไร?

JavaScript เป็นภาษาสคริปต์เชิงวัตถุข้ามแพลตฟอร์มที่เพิ่มการโต้ตอบและการตอบสนองต่อหน้าเว็บของคุณ

JavaScript ช่วยให้นักพัฒนาเว็บไซต์สามารถควบคุมลักษณะการทำงานของหน้าเว็บได้ สิ่งนี้ทำให้ JavaScript แตกต่างโดยพื้นฐานจาก HTML ซึ่งเป็นภาษาที่รับผิดชอบโครงสร้างของเอกสารเว็บ และ CSS ซึ่งเป็นภาษาที่สร้าง รูปร่างหน้าเว็บ.

โปรแกรมที่เขียนใน จาวาสคริปต์เรียกว่าสคริปต์ ในเบราว์เซอร์ พวกมันจะเชื่อมต่อโดยตรงกับเอกสาร HTML และทันทีที่โหลดเพจ พวกมันจะถูกดำเนินการทันที กระบวนการรันสคริปต์เรียกว่า "การตีความ"

หากสคริปต์ PHP ได้รับการประมวลผลทางฝั่งเซิร์ฟเวอร์ด้วย โดยใช้ PHPล่าม จากนั้น JavaScript จะถูกดำเนินการในเบราว์เซอร์ของผู้ใช้โดยล่าม JavaScript

ปัจจุบัน ทุกเบราว์เซอร์รองรับ JavaScript ทำให้เป็นภาษาของเว็บ

ในเบราว์เซอร์ JavaScript สามารถทำทุกอย่างที่เกี่ยวข้องกับการจัดการเอกสาร HTML การโต้ตอบกับผู้เยี่ยมชม และด้วยข้อจำกัดบางประการ การโต้ตอบกับเซิร์ฟเวอร์:

  • ตรวจสอบว่ากรอกแบบฟอร์ม HTML ที่กำหนดเองอย่างถูกต้อง
  • โต้ตอบกับเว็บแคม ไมโครโฟน และอุปกรณ์อื่นๆ ของคุณ
  • เปลี่ยนสไตล์ขององค์ประกอบ HTML ซ่อน แสดงองค์ประกอบ ฯลฯ
  • แสดงป๊อปอัปและกล่องโต้ตอบ
  • ตอบสนองต่อการกระทำของผู้เยี่ยมชม ประมวลผลการคลิกเมาส์ การเคลื่อนไหวของเคอร์เซอร์ ฯลฯ
  • ส่งคำขอไปยังเซิร์ฟเวอร์และโหลดข้อมูลโดยไม่ต้องโหลดหน้าซ้ำ

JavaScipt เป็นภาษาที่ทรงพลังและมีประสิทธิภาพอย่างเหลือเชื่อที่คุณควรลองใช้!

JavaScript กับ ECMAScript

บทช่วยสอนนี้เขียนเกี่ยวกับภาษาที่เรียกว่า JavaScript อย่างไรก็ตาม มาตรฐานอย่างเป็นทางการซึ่งกำหนดข้อกำหนดเฉพาะที่อธิบายภาษานั้นเรียกว่า ECMAScript

Netscape ส่งภาษา JavaScript ให้กับ Ecma International ซึ่งเป็นองค์กรที่อุทิศให้กับการกำหนดมาตรฐานของระบบข้อมูลและการสื่อสาร (เดิม ECMA เป็นตัวย่อสำหรับ European Computer Manufacturing Association) ซึ่งได้รับการอนุมัติเป็นมาตรฐาน ECMAScript ในปี 1997

ได้มาตรฐานนี้ เวอร์ชันจาวาสคริปต์ที่เรียกว่า ECMAScript ทำงานเหมือนกันในทุกแอปพลิเคชันที่รองรับมาตรฐาน นักพัฒนาสามารถใช้มาตรฐานภาษาเปิดเพื่อพัฒนาการใช้งาน JavaScript ของตนเองได้

อย่างเป็นทางการ เมื่อนักพัฒนาอ้างถึง ECMAScript พวกเขามักจะหมายถึงภาษา "ในอุดมคติ" ที่กำหนดโดยมาตรฐาน Ecma บ่อยครั้งที่แนวคิดทั้งสองนี้ใช้แทนกันได้ ดังนั้น เมื่อกล่าวถึงมาตรฐานอย่างเป็นทางการในบทช่วยสอนนี้ ชื่อ ECMAScript จะถูกนำมาใช้ และในกรณีอื่น ๆ เมื่อกล่าวถึงภาษานั้น จะใช้ JavaScript หนังสือเรียนจะใช้ตัวย่อทั่วไป ES5 เมื่ออ้างถึงมาตรฐาน ECMAScript รุ่นที่ห้า

จาวาสคริปต์ไม่ใช่จาวา

ก่อนที่คุณจะเริ่มเรียนรู้ JavaScript คุณควรเข้าใจว่า JavaScript ไม่ใช่ Java นี่เป็นภาษาการเขียนโปรแกรมสองภาษาที่แตกต่างกันโดยสิ้นเชิง JavaScript ไม่มีอะไรที่เหมือนกันกับภาษา Java ยกเว้นไวยากรณ์ที่คล้ายคลึงกัน

Java เป็นภาษาโปรแกรมเชิงวัตถุที่พัฒนาโดย Sun Microsystems ตั้งแต่ปี 1991 และเผยแพร่อย่างเป็นทางการเมื่อวันที่ 23 พฤษภาคม 1995 Java เป็นภาษาโปรแกรมที่ทรงพลังและซับซ้อนกว่ามาก และคุณสามารถเขียนโปรแกรมได้หลากหลายในนั้น มีโอกาสพิเศษสำหรับหน้าอินเทอร์เน็ต - การเขียนแอปเพล็ต

แอพเพล็ตคือโปรแกรม Java ที่สามารถเชื่อมต่อกับ HTML ได้โดยใช้นามสกุล . แอปเพล็ต Java ทำงานโดยใช้คอมไพเลอร์ แอปเพล็ต Java ถูกฝังอยู่ในหน้าเว็บ แต่เก็บไว้ในดิสก์เป็น แยกไฟล์. นี้ ไฟล์ไบนารีและถ้าเปิดดูก็จะไม่เห็น แหล่งที่มาแอพเพล็ต

สคริปต์ JavaScript อยู่ภายในหน้าเว็บและไม่สามารถแยกจากหน้าเว็บได้ สคริปต์ JS ไม่จำเป็นต้องมีคอมไพเลอร์ในการดำเนินการ โดยเบราว์เซอร์จะเรียกใช้งานจากฝั่งผู้ใช้ สคริปต์ JS เป็นข้อความธรรมดา และคุณสามารถดูโค้ดได้ด้วยตาเปล่า โดยไม่ต้องมีอะไรพิเศษ ซอฟต์แวร์.

Java เป็นภาษาคลาสที่รวดเร็ว ปลอดภัย และเชื่อถือได้ โมเดลเชิงคลาสของ Java หมายความว่าโปรแกรมประกอบด้วยคลาสและวิธีการเท่านั้น การสืบทอดคลาสและการพิมพ์ที่เข้มงวดในภาษา Java โดยทั่วไปจำเป็นต้องมีลำดับชั้นของอ็อบเจ็กต์ที่เชื่อมโยงกันอย่างแน่นหนา ข้อกำหนดเหล่านี้ทำให้การเขียนโปรแกรม Java ซับซ้อนกว่าการเขียนโปรแกรม JavaScript

จาวาสคริปต์คือ ภาษาง่าย ๆการเขียนโปรแกรมที่มี ไวยากรณ์ง่ายๆ, ฟังก์ชันพิเศษในตัวและ ความต้องการขั้นต่ำเพื่อสร้างวัตถุ คุณไม่จำเป็นต้องประกาศตัวแปร คลาส และวิธีการ คุณไม่ต้องกังวลว่าวิธีการเป็นแบบสาธารณะ ส่วนตัว หรือได้รับการป้องกัน และคุณไม่จำเป็นต้องใช้อินเทอร์เฟซ ตัวแปร พารามิเตอร์ และประเภทการส่งคืนฟังก์ชันของสคริปต์ JS ไม่ได้ถูกพิมพ์อย่างชัดเจน

คุณต้องการเรียนรู้ JavaScript อะไรบ้าง?

ไม่จำเป็นต้องมีความรู้เกี่ยวกับ JavaScript มาก่อน แต่เนื่องจาก JavaScript อาศัยอยู่ภายในหน้าเว็บและควบคุมไดนามิกของหน้าเว็บ จึงถือว่าคุณคุ้นเคยกับพื้นฐานแล้ว ภาษา HTMLแม้ว่าจะไม่รวมความเป็นไปได้ของ JavaScript แบบ "ขนาน" ก็ตาม

ส่วนใหญ่ สคริปต์จาวาสคริปต์ได้รับการออกแบบมาเพื่อ "ฟื้นฟู" HTML เช่น จุดประสงค์ของการสร้างสคริปต์คือการแสดงให้เห็นว่ารูปลักษณ์ของหน้าจะเปลี่ยนไปอย่างไรเมื่อเปลี่ยนค่าของพารามิเตอร์แท็ก HTML สถานการณ์ประเภทนี้ที่รวบรวมและจัดรูปแบบอย่างเหมาะสมเป็นตัวอย่างของเว็บแอปพลิเคชันที่พัฒนาขึ้น

ก่อนที่เราจะเริ่มเขียนโปรแกรม JavaScript แรกของเรา สิ่งสำคัญมากคือต้องแน่ใจว่าเรามีเครื่องมือที่จำเป็นทั้งหมดที่ได้รับการกำหนดค่าและใช้งาน

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

ในการเขียนและรันโปรแกรม JavaScript ก็เพียงพอที่จะติดตั้งอินเทอร์เน็ตเบราว์เซอร์สมัยใหม่ (เช่น Yandex, Internet Explorer, มอซซิลา ไฟร์ฟอกซ์หรือกูเกิลโครม)

ภายหลังในบทช่วยสอนนี้ คุณจะเห็นว่าโค้ด JavaScript สามารถฝังได้โดยตรงในไฟล์ HTML ในแท็ก และเมื่อมีการโหลดไฟล์ HTML โค้ดจะถูกเรียกใช้งานโดยเบราว์เซอร์ เป็นที่น่าสังเกตว่าคุณไม่จำเป็นต้องทำเช่นนี้ทุกครั้งที่คุณต้องการทดสอบโค้ด JavaScript สั้นๆ

วิธีที่ง่ายที่สุดในการทดสอบโค้ด JavaScript คือการใช้เครื่องมือคอนโซลเว็บในตัวของเบราว์เซอร์

โดยทั่วไป เว็บคอนโซลสามารถเปิดใช้งานได้โดยการกด F12 หรือ การรวมกันที่ร้อนแรงปุ่ม – Ctrl + Shift + J โดยทั่วไปแล้ว แผงหรือหน้าต่างของ "เครื่องมือสำหรับนักพัฒนา" ทั่วไปจะเปิดขึ้นเป็น แผงแยกที่ด้านบนหรือด้านล่างของหน้าต่างเบราว์เซอร์ดังแสดงในรูป 1.

แผงนี้ประกอบด้วยแท็บจำนวนมากที่ให้คุณสำรวจโครงสร้างเอกสาร HTML, สไตล์ CSS ฯลฯ หนึ่งในนั้นคือแท็บคอนโซล JavaScript ซึ่งคุณสามารถป้อนบรรทัดของโค้ด JavaScript และดำเนินการได้

สำหรับการวิเคราะห์โค้ดโปรแกรมโดยละเอียดเพิ่มเติม เราต้องการ โปรแกรมแก้ไขข้อความพร้อมฟังก์ชันเพิ่มเติมที่ทำให้การเขียนและแก้ไขโค้ดโปรแกรมง่ายขึ้น ดังนั้นเราจะใช้โปรแกรมแก้ไข Notepad++ หากคุณใช้โปรแกรมแก้ไขอื่นอยู่แล้วและคุ้นเคยกับมันแล้ว ไม่มีอะไรหยุดคุณจากการใช้มันต่อไป

จากตัวอย่างส่วนใหญ่ที่ให้ไว้ในบทช่วยสอนของเรา คุณสามารถทดลองได้โดยตรงบนหน้าไซต์โดยใช้เครื่องมือในตัว - JS mini-editor

หากต้องการดูผลลัพธ์ของการรันสคริปต์ในหน้าต่างใหม่ ให้คลิกที่ไอคอน และหากคุณต้องการเปลี่ยนแปลงบางอย่างในโค้ด ให้คลิกที่ไอคอน

นี่เป็นเอกสาร HTML ปกติ

เราออกจากกลับไปที่ HTML

โปรดทราบ: ในการทดสอบ JavaScript ง่ายๆ เช่นนี้ คุณสามารถละแท็ก , ในไฟล์ HTML ได้เช่นกัน

การเรียนรู้ JavaScript ก็เหมือนกับภาษาโปรแกรมอื่นๆ ไม่ใช่เรื่องง่าย แต่มันก็คุ้มค่ากับความพยายามและเวลาอย่างแน่นอน การเรียนรู้จะมีประสิทธิภาพเมื่อได้รับไม่เพียงเช่นนั้น แต่ด้วยความพยายาม คุณต้องใช้ความพยายามอย่างมีสติเพื่อเรียนรู้ทักษะและความสามารถใหม่ๆ ความรู้ที่ได้โดยไม่ต้องใช้ความพยายามก็เหมือนระลอกน้ำ - ในไม่ช้าก็ไม่มีร่องรอยเหลืออยู่

หนังสืออิเล็กทรอนิกส์ หลักสูตรออนไลน์ฟรีและแพลตฟอร์มออนไลน์สำหรับการเรียนรู้จากปัญหา ทางเลือกของแหล่งความรู้ที่มีคุณภาพในปัจจุบันแทบจะไร้ขีดจำกัด แต่วิธีการจูงใจตัวเองให้ การศึกษาด้วยตนเองวิธีการเรียนรู้ที่จะเรียนอย่างอิสระ?

ลองทำตามคำแนะนำง่ายๆ แต่ผ่านการพิสูจน์แล้ว

ต้องศึกษาทีละน้อยแต่สม่ำเสมอ ความสม่ำเสมอเป็นกุญแจสู่ความสำเร็จในการเรียนรู้ วางแผนกิจวัตรประจำวันของคุณเพื่อที่คุณจะได้ใช้เวลาอย่างน้อยหนึ่งชั่วโมงทุกวันในการเรียนรู้ JavaScript อย่าพยายามเรียนรู้ทุกอย่างพร้อมกันในช่วงเวลาสั้นๆ การแบ่งกระบวนการศึกษาด้วยตนเองออกเป็นช่วงศึกษาเล็กๆ จะสร้างความรู้สึกของความสำเร็จอย่างรวดเร็วและเป็นแรงบันดาลใจให้คุณกลับไปเรียนรู้ในวันรุ่งขึ้น

เวลาที่แย่ที่สุดในการเรียนคือตอนที่รู้สึกเหนื่อย ในช่วงเวลาดังกล่าวสิ่งสำคัญคือไม่ต้องบังคับตัวเอง - คุณจะไม่ได้รับผลลัพธ์ที่คาดหวัง สมองของมนุษย์ไม่สามารถเรียนรู้บางสิ่งบางอย่างได้อย่างไม่มีกำหนด - จำเป็นต้องได้รับการหยุดพัก การปฏิบัติตามหลัก 25/5 ลองฝึกสอน 25 นาที และพัก 5 นาที สมองของคุณจะชินกับภาระที่สม่ำเสมอและจะทำงานได้อย่างมีประสิทธิผลมากที่สุด

ใช้แนวปฏิบัติในการจำ - พื้นฐานของการเรียนรู้ ยิ่งเราจำข้อมูลได้บ่อยเท่าไร ข้อมูลก็จะยิ่งถูกเก็บไว้ในความทรงจำของเรานานขึ้นเท่านั้น

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

ควบคู่ไปกับการศึกษาเชิงทฤษฎีให้ฝึกฝนอย่างต่อเนื่อง เพื่อให้ได้ประสบการณ์จริง คุณเพียงแค่ต้องเขียนเยอะๆ และวิเคราะห์ตัวอย่าง รหัสที่ดี. เมื่ออ่านตัวอย่างต่างๆ ให้อ่านโค้ดทุกบรรทัดอย่างระมัดระวัง คุณต้องแน่ใจว่าคุณเข้าใจวิธีการทำงานของแต่ละบรรทัด อย่ากลัวที่จะทดลอง เรียนรู้วิธีการแสดงข้อมูลบางอย่างในหน้าต่างเบราว์เซอร์และวิเคราะห์ข้อมูล ตัวอย่างเช่น สิ่งที่แสดงบนหน้าจอ และหลังจากนั้น คุณได้สิ่งที่ต้องการหรือไม่ ถ้าไม่เช่นนั้น เพราะเหตุใด

ไม่ว่าคุณจะเลือกวิธีการเรียนรู้แบบใดอย่าลืมว่ามันควรจะน่าสนใจสำหรับคุณและเสริมกำลัง แบบฝึกหัดภาคปฏิบัติ– ตัวอย่างมีค่านับพันคำ ตัวอย่างมักจะเข้าใจได้ง่ายกว่าทฤษฎีที่มีหลายหน้า ดังนั้นจงกล้าหาญ! ฉันหวังว่าบทช่วยสอนนี้จะช่วยคุณได้ดี

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

ภาษาการเขียนโปรแกรมเป็นเพียงเครื่องมือที่บุคคลสร้างกฎในระบบที่สร้างขึ้น

อินเทอร์เน็ตนำเสนอโอกาสมากมายที่ผู้มีความคิดที่เฉียบแหลมและกล้าได้กล้าเสียกำลังคว้าไว้ แน่นอนว่าการพัฒนาเว็บไซต์ก็มีเครื่องมือของตัวเองในการนำแนวคิดมาสู่ความเป็นจริง หนึ่งในนั้นคือภาษาการเขียนโปรแกรม JavaScript ซึ่งจะกล่าวถึงในบทความนี้:

ข้อมูลทั่วไป

หลายๆ คน แม้กระทั่งผู้ที่ไม่เกี่ยวข้องกับ IT ก็ยังเคยได้ยินคำว่า Java มาก่อน ภาษาที่ไม่ขึ้นกับแพลตฟอร์มที่ปฏิวัติวงการซึ่งมีการเขียนแอปพลิเคชันอย่างจริงจัง ระบบมือถือ. ได้รับการพัฒนาโดยบริษัท Sun ที่มีแนวโน้มดี ซึ่งต่อมาอยู่ภายใต้การดูแลของ Oracle แต่ทั้งสองบริษัทไม่มีส่วนเกี่ยวข้องกับ JavaScript:

สิ่งเดียวที่ซันต้องการคือการอนุญาตให้ใช้ส่วนหนึ่งของชื่อ น่าแปลกที่ JavaScript ไม่ได้เป็นของบริษัทใดๆ เลย

เมื่อเขียนเว็บแอปพลิเคชัน การเขียนโปรแกรม JavaScript ถูกใช้บ่อยที่สุด เพื่อแสดงรายการสั้น ๆ คุณสมบัติที่สำคัญของภาษานี้ ควรเน้นสิ่งต่อไปนี้:

  • การวางแนววัตถุ การทำงานของโปรแกรมแสดงถึงปฏิสัมพันธ์ของวัตถุ
  • การแปลงชนิดข้อมูลจะดำเนินการโดยอัตโนมัติ
  • ฟังก์ชั่นเป็นวัตถุของคลาสฐาน ฟีเจอร์นี้ทำให้ JavaScript คล้ายกับภาษาโปรแกรมเชิงฟังก์ชันมากมาย เช่น Lisp และ Haskell;
  • การล้างหน่วยความจำอัตโนมัติ สิ่งที่เรียกว่าการรวบรวมขยะทำให้ JavaScript คล้ายกับ C# หรือ Java

หากเราพูดถึงสาระสำคัญของการใช้ JavaScript ภาษานี้จะช่วยให้คุณสามารถ "ฟื้นฟู" หน้าเว็บไซต์ที่ไม่เคลื่อนไหวโดยใช้โค้ดที่สามารถเรียกใช้งานได้ (ที่เรียกว่าสคริปต์) นั่นคือเราสามารถวาดความคล้ายคลึงกับการ์ตูนได้ โดยที่ html และ css เป็นอักขระที่วาด และ JavaScript คือสิ่งที่ทำให้พวกเขาเคลื่อนไหว

ถ้าเราพูดถึงไวยากรณ์ JavaScript ก็มีคุณสมบัติดังต่อไปนี้:

  • การลงทะเบียนเป็นสิ่งสำคัญ ฟังก์ชันที่เรียกว่า func() และ Func() แตกต่างอย่างสิ้นเชิง
  • ตัวดำเนินการต้องตามด้วยเครื่องหมายอัฒภาค
  • ออบเจ็กต์และการดำเนินการในตัว
  • ไม่นับช่องว่าง คุณสามารถใช้การเยื้องได้มากเท่าที่คุณต้องการ เช่นเดียวกับการขึ้นบรรทัดใหม่เพื่อจัดรูปแบบโค้ดของคุณ

โค้ด JavaScript ที่ง่ายที่สุดมีลักษณะดังนี้:

ขอบเขตการใช้งาน

เพื่อทำความเข้าใจว่าเหตุใดจึงจำเป็นต้องใช้ JavaScript และความจำเป็นในการเรียนรู้อย่างไร เราควรเน้นบางพื้นที่ที่ใช้งาน JavaScript ภาษาที่กำหนดการเขียนโปรแกรม

  • การพัฒนาแอพพลิเคชั่นบนเว็บ คุณต้องการติดตั้งตัวนับที่เรียบง่าย จัดระเบียบการถ่ายโอนข้อมูลระหว่างแบบฟอร์ม หรือวางเกมบนเว็บไซต์ของคุณหรือไม่? จากนั้น JavaScript จะเป็นผู้ช่วยที่ซื่อสัตย์ในเรื่องนี้
  • "การมีส่วนร่วมอย่างแข็งขัน" ใน AJAX เทคโนโลยีนี้ทำให้สามารถเร่งความเร็วการทำงานของแอปพลิเคชันได้อย่างมากโดยการแลกเปลี่ยนข้อมูลกับเซิร์ฟเวอร์ในโหมด "พื้นหลัง":
  • ระบบปฏิบัติการ บางคนอาจไม่รู้ แต่ Windows, Linux และ Mac มีคู่แข่งเบราว์เซอร์ของตนเอง ซึ่งส่วนใหญ่เขียนด้วย JavaScript;
  • แอปพลิเคชันมือถือ
  • สาขาวิชา. ความเชี่ยวชาญพิเศษด้านการเขียนโปรแกรมใดๆ ของมหาวิทยาลัยจะรวมถึงการศึกษา JavaScript ไม่ทางใดก็ทางหนึ่ง นี่เป็นเพราะความจริงที่ว่าภาษาได้รับการพัฒนามาสำหรับโปรแกรมเมอร์ที่ไม่แข็งแกร่งมากนัก บทเรียน JavaScript ได้รับการถักทออย่างมีเหตุผล หลักสูตรพื้นฐาน HTML ดังนั้นการเรียนรู้มันจึงค่อนข้างง่าย
ข้อดีและข้อเสีย

อย่าคิดว่า JavaScript เป็นยาครอบจักรวาลสำหรับทุกปัญหา และโปรแกรมเมอร์ทุกคนก็ใช้ภาษานี้ด้วยใบหน้ายิ้มแย้ม ทุกสิ่งในโลกล้วนมีด้านบวกและด้านลบ ขั้นแรกให้สังเกตข้อบกพร่อง

  • ความจำเป็นในการจัดเตรียมความเข้ากันได้ข้ามเบราว์เซอร์ เนื่องจาก JavaScript ทำหน้าที่เป็นเทคโนโลยีอินเทอร์เน็ต คุณจึงต้องปฏิบัติตามกฎที่ JavaScript กำหนดไว้ เวิลด์ไวด์เว็บ. โค้ดต้องทำงานอย่างถูกต้องในเบราว์เซอร์ยอดนิยมทั้งหมดหรืออย่างน้อยที่สุด
  • ระบบการสืบทอดในภาษาทำให้ยากต่อการเข้าใจสิ่งที่เกิดขึ้น JavaScript ใช้การสืบทอดตามต้นแบบ ผู้ที่เคยศึกษาภาษาการเขียนโปรแกรมเชิงวัตถุอื่น ๆ จะคุ้นเคยกับ "คลาสย่อยสืบทอดคลาสผู้ปกครอง" ตามปกติ แต่ใน JavaScript สิ่งเหล่านี้ได้รับการจัดการโดยตรงโดยอ็อบเจ็กต์ และนี่อยู่นอกเหนือความเข้าใจของคุณ
  • ไม่มา ห้องสมุดมาตรฐาน. JavaScript ไม่มีความสามารถใดๆ ในการทำงานกับไฟล์ สตรีม I/O หรือสิ่งที่มีประโยชน์อื่นๆ
  • ไวยากรณ์โดยทั่วไปทำให้เข้าใจยาก ความสวยงามของโค้ดไม่ใช่จุดแข็งของ JavaScript อย่างชัดเจน แต่กฎหลักของโปรแกรมเมอร์คือ: “มันใช้งานได้ไหม? อย่าสัมผัส! "
ตอนนี้มันก็คุ้มค่าที่จะสังเกตข้อดีบางประการ
  • JavaScript มีความสามารถมากมายสำหรับการแก้ปัญหาที่หลากหลาย ความยืดหยุ่นของภาษาทำให้สามารถใช้รูปแบบการเขียนโปรแกรมได้มากมายที่เกี่ยวข้องกับเงื่อนไขเฉพาะ ผู้มีจิตใจสร้างสรรค์ย่อมมีความสุขอย่างแท้จริง
  • ความนิยมของ JavaScript ทำให้เกิดไลบรารี่สำเร็จรูปจำนวนมากสำหรับโปรแกรมเมอร์ ซึ่งสามารถลดความซับซ้อนในการเขียนโค้ดและลดความไม่สมบูรณ์ของไวยากรณ์ได้อย่างมาก
  • การประยุกต์ใช้ในหลายพื้นที่ ความสามารถที่หลากหลายของ JavaScript ทำให้โปรแกรมเมอร์มีโอกาสลองตัวเองในฐานะนักพัฒนาแอพพลิเคชั่นที่หลากหลาย และแน่นอนว่าสิ่งนี้กระตุ้นความสนใจในกิจกรรมระดับมืออาชีพ

คุณไม่ควรใส่ใจกับความจริงที่ว่ามีข้อเสียมากกว่าข้อดี JavaScript ได้รับการยึดที่มั่นอย่างแน่นหนาในช่องของมัน และไม่มีการวิพากษ์วิจารณ์จากจุดนั้น ช่วงเวลานี้จะไม่เคาะมันออกมา

สำหรับผู้ที่ต้องการเรียน

เส้นทางที่ยากและยาวรออยู่ข้างหน้าสำหรับผู้ที่ตัดสินใจศึกษา JavaScript อย่างละเอียด สำหรับผู้เริ่มต้น มีคำแนะนำพื้นฐานซึ่งคุณสามารถทำให้การเรียนรู้ของคุณง่ายขึ้นได้อย่างมาก

  • ก่อนอื่นเลย HTML คุณไม่สามารถเริ่มทำอะไรกับอินเทอร์เน็ตได้หากไม่มีพื้นฐาน Cascading Style Sheets (CSS) จะมีประโยชน์มากเช่นกัน
  • ใช้วรรณกรรมใหม่ การเขียนโปรแกรมไม่ใช่ฟิสิกส์ ซึ่งเป็นกฎที่ขัดขืนไม่ได้ แต่เป็นกฎใหม่ สื่อการสอน- สิ่งเหล่านี้ถูกรื้อถอนของเก่า เทคโนโลยีไอทีมีการพัฒนาอย่างต่อเนื่อง และไม่ควรละเลยการอัปเดตที่เป็นประโยชน์
  • ลองเขียนโปรแกรมทุกส่วนของโปรแกรมด้วยตัวเอง หากมีบางอย่างไม่ได้ผลเลย คุณสามารถยืมโค้ดของคนอื่นได้ แต่หลังจากทำความเข้าใจแต่ละบรรทัดด้วยตนเองแล้วเท่านั้น
  • การดีบักคือเพื่อนที่ดีที่สุดของคุณ การค้นหาข้อผิดพลาดอย่างรวดเร็วเป็นหนึ่งในนั้น ช่วงเวลาที่สำคัญที่สุดในการเขียนโปรแกรม
  • อย่าละเลยกฎการจัดรูปแบบ แน่นอนว่าโค้ดจะไม่ดีขึ้นหรือแย่ลงเนื่องจากการเยื้องและช่องว่างที่แตกต่างกัน แต่โปรแกรมเมอร์สามารถอ่านและทำความเข้าใจได้ง่ายก็เป็นจุดสำคัญเช่นกัน รหัสด้านล่าง? เข้าใจยากมากโดยเฉพาะถ้าคุณไม่ใช่เขา
  • ชื่อตัวแปรต้องมีความหมายตามคำศัพท์ อยู่ในขั้นตอนการเขียน โปรแกรมง่ายๆสิ่งนี้ดูเหมือนจะไม่สำคัญเลย แต่เมื่อจำนวนบรรทัดของโค้ดเกินพันบรรทัด ปีศาจทุกตัวก็หักขาของพวกเขา

ยังไม่รู้ว่า Javascript คืออะไร? ในบทความนี้เราสามารถหาคำตอบได้

ทฤษฎีเล็กน้อย

เบราว์เซอร์และโปรแกรมอื่นๆ มักใช้ JavaScript เป็นภาษาโปรแกรม Scripting ใช้โมเดลต้นแบบและมีการพิมพ์แบบหลวมๆ ภาษานี้ได้รับอิทธิพลอย่างมากจากรุ่นก่อน - ECMAScript

วัตถุประสงค์โดยรวมของการสร้างสรรค์คือเพื่อให้ผู้ที่ไม่ใช่ผู้เชี่ยวชาญใช้งานได้ง่ายและใช้งานง่าย ปัจจุบัน JavaScript เป็นหนึ่งในภาษาโปรแกรมที่ได้รับความนิยมมากที่สุดในประเภทเดียวกัน สิ่งที่ทำให้ใช้งานได้ง่ายขึ้นคือมีอยู่ในแอปพลิเคชัน JavaScript เป็นภาษาเชิงวัตถุ แต่ฟังก์ชันการทำงานแตกต่างเล็กน้อยจากภาษาประเภทเดียวกันที่โดยทั่วไปมีให้

JavaScript ถูกใช้อย่างแข็งขันในการพัฒนาเว็บ เมนูแบบเลื่อนลง ปฏิทิน ตัวจับเวลา สวิตช์ - ขณะนี้องค์ประกอบเหล่านี้และองค์ประกอบอื่น ๆ อีกมากมายได้รับการติดตั้งโดยใช้ความสามารถของภาษานี้

โดยจะใช้งานกับอ็อบเจ็กต์และคลาสที่แตกต่างกัน สามารถกำหนดประเภทได้โดยอัตโนมัติ และรองรับฟังก์ชันที่ไม่ระบุชื่อ ไวยากรณ์จาวาสคริปต์ย่อมาจาก Java และ C แต่ในด้านฟังก์ชันการทำงาน มีความเกี่ยวข้องอย่างใกล้ชิดกับภาษาการเขียนโปรแกรมอื่นๆ มากกว่า มีความแตกต่างด้านฟังก์ชันการทำงานมากมายระหว่าง Java และ JavaSkript ตัวอย่างเช่น Java ประยุกต์ใช้แนวทางวัตถุในคลาส ในขณะที่ JavaScript ประยุกต์ใช้บนต้นแบบ โค้ดสามารถฝังลงในหน้าเว็บในคอนเทนเนอร์บางตัวได้

จะเปิดใช้งานจาวาสคริปต์ได้อย่างไร?

— รหัสจาวาสคริปต์เชื่อมต่ออยู่ในคอนเทนเนอร์นี้
- ตัวอย่างการเชื่อมต่อไลบรารี animate.js ซึ่งอยู่ในโฟลเดอร์เดียวกับหน้า html นี้ src(source) — พาธไปยังไฟล์

JavaScript ถือว่าค่อนข้างปลอดภัยเพราะถึงแม้โค้ดจะฝังอยู่ในหน้าเว็บ แต่ก็ไม่ได้รับสิทธิพิเศษสูงและไม่สามารถทำงานร่วมกับหน้าอื่นและวัตถุจำนวนมากได้ เขาไม่สามารถเปิดใหญ่เกินไปได้ หน้าต่างโปรแกรม. ช่องโหว่หลักของ JavaScript คือการเขียนสคริปต์ข้ามไซต์

สคริปต์ถูกฝังอยู่ในหน้าที่ผู้ใช้ทำงานอยู่ และจึงสามารถเข้าควบคุมบัญชีของเขาได้ ซึ่งอาจส่งผลให้เกิดพฤติกรรมที่ไม่พึงประสงค์ สิ่งนี้สามารถเกิดขึ้นได้เนื่องจากข้อผิดพลาดในตัวเบราว์เซอร์เอง เมื่อพัฒนาและทำงานกับสคริปต์ คุณควรคำนึงเสมอว่าโค้ดหรือตัวโปรแกรมอาจตกไปอยู่ในมือของผู้โจมตี สิ่งเหล่านี้สามารถเปลี่ยนแปลงหรือผสมกันได้หลายวิธีเพื่อสร้างสปายแวร์หรือผลร้าย

คุณไม่ควรป้อนข้อมูลที่เป็นความลับใด ๆ ลงในแบบฟอร์มสคริปต์เดียวกัน ทั้งหมดนี้สามารถส่งไปยังเซิร์ฟเวอร์ของบุคคลที่สามได้ โดยข้ามจุดประสงค์ที่แท้จริงและถูกขโมยไป เบราว์เซอร์ยังสามารถเรียกใช้ JavaScript นอกโหมดพิเศษ ซึ่งอาจนำไปสู่ข้อผิดพลาดและสคริปต์ได้รับพลังงานมากเกินไป นี่เป็นหนึ่งในปัญหาในการใช้งาน สคริปต์ที่เปิดตัวบ่อยครั้งในแอปพลิเคชันปกติอาจเป็นโปรแกรมโทรจันได้

ตามสถิติของ Github ในขณะนี้ Java และ JavaScript เป็นภาษาโปรแกรมที่ได้รับความนิยมมากที่สุด รองจาก Python, PHP และ Ruby แม้ว่าชื่อจะคล้ายกัน แต่เป็นภาษาที่แตกต่างกันมาก คุณอาจคิดว่า JavaScript เป็น Java เวอร์ชันที่ง่ายกว่าและเบากว่า แต่คุณคิดผิด นี่เป็นภาษาการเขียนโปรแกรมสองภาษาที่แตกต่างกันโดยสิ้นเชิงซึ่งช่วยให้คุณสามารถทำสิ่งต่าง ๆ ได้ แต่ในขณะเดียวกันก็มีความแตกต่างมากกว่าความคล้ายคลึงกัน

ในบทความนี้ เราจะดูความแตกต่างระหว่าง Java และ Javascript เพื่อช่วยคุณเลือกภาษาที่เหมาะสมที่สุดในการแก้ปัญหาของคุณ อย่างที่คุณเห็นทั้งสองภาษาไม่ค่อยได้ใช้ในการทำงานเดียวกัน

Java เวอร์ชันแรกซึ่งมีชื่อรหัสว่า "Oak" และ "Green" หลังจากการพัฒนาครั้งแรก เปิดตัวในเดือนพฤษภาคม พ.ศ. 2538 โปรแกรมเมอร์หลายคนในเวลานั้นถือว่าภาษานี้มาแทนที่ C/C++ เนื่องจากมีไวยากรณ์ที่คล้ายคลึงกันและยังได้นำเสนอแนวคิดใหม่ ๆ อีกด้วย ภาษาทำให้การเขียนโปรแกรมง่ายและปลอดภัยยิ่งขึ้น

หลักการสำคัญประการหนึ่งของ Java ซึ่งเริ่มต้นในขณะนั้นและดำเนินต่อไปจนถึงปัจจุบัน คือแนวคิดที่ว่าโปรแกรมเมอร์สามารถเขียนโค้ดเพียงครั้งเดียวและนำไปใช้ได้ทุกที่ ไม่เหมือนที่เรียบเรียง ไฟล์ปฏิบัติการซึ่งมีรูปแบบที่แตกต่างกันสำหรับแพลตฟอร์มที่แตกต่างกัน รหัสจาวาถูกคอมไพล์เป็นไฟล์ JAR ไฟล์เดียวที่สามารถรันในสภาพแวดล้อมที่รองรับ Java

สิ่งนี้เกิดขึ้นได้ด้วย Java Machine (JVM) เครื่อง Java เป็นโปรแกรมปกติที่ทำหน้าที่เป็นตัวกลางระหว่าง ระบบปฏิบัติการและไฟล์จาร์ มันจะอ่านไฟล์โปรแกรมที่มีคำสั่ง Java และแปลงเป็นคำสั่งสำหรับแพลตฟอร์มที่มันรันตอนรันไทม์ กระบวนการนี้เรียกว่าการรวบรวมแบบทันเวลาหรือ JIT

จาวาสคริปต์คืออะไร?

JavaScript กลายเป็นภาษาง่ายๆ สำหรับการสร้างข้อจำกัด แบบฟอร์ม HTML. เมื่อ Netscape Communications ตัดสินใจว่าพวกเขาต้องการอินเทอร์เน็ตแบบไดนามิกมากขึ้น พวกเขาได้สร้างภาษาใหม่ที่สามารถนำมาใช้ใน HTML ได้โดยตรง ภาษานี้เรียกว่า LiveScript และได้รับการพัฒนาภายในสิบวัน

จากนั้นภาษาก็ได้รับการพัฒนามาระยะหนึ่งภายใต้ชื่อนี้ แต่มีเหตุผลหลายประการที่ทำให้ชื่อเปลี่ยนไป ประการแรก JavaScript และ Java ควรจะเสริมซึ่งกันและกัน ดังนั้น JavaScript จึงได้รับไวยากรณ์ที่คล้ายกัน และประการที่สอง ในเวลานั้น Java ได้รับความนิยมอย่างมาก ดังนั้นนักพัฒนา เพื่อดึงดูดผู้คนให้เข้ามาใช้ภาษานี้มากขึ้น จึงตัดสินใจใช้ well - คำที่รู้จักในชื่อและแทนที่ Live ใน Java นี่คือวิธีที่ JavaScript ถือกำเนิดขึ้น แต่มีเพียงไวยากรณ์เท่านั้นที่คล้ายกันในภาษา ต่อมา Java ถูกใช้น้อยลงบนอินเทอร์เน็ตและภาษาก็แยกเส้นทางออกไป ปัจจุบัน HTML, CSS และ JavaScript เป็นองค์ประกอบหลักของการพัฒนาเว็บ

ต่างจาก Java ที่ถูกคอมไพล์ JavaScript เป็นภาษาที่ตีความอย่างสมบูรณ์ เมื่อคุณเยี่ยมชมไซต์ที่ใช้ JavaScript เบราว์เซอร์ของคุณจะได้รับซอร์สโค้ดแบบเต็มสำหรับโปรแกรม จากนั้นจะถูกดำเนินการทันทีโดยใช้เอ็นจิ้น JavaScript เบราว์เซอร์ต่างๆพวกเขาใช้เครื่องยนต์ที่แตกต่างกัน: V8 (Chrome), SpiderMonkey (Firefox), Chakra (Edge) และอื่นๆ

ลักษณะที่คล้ายกันของ Java หรือ JavaScript

แม้จะมีความแตกต่างทั้งหมด แต่ภาษาเหล่านี้มีความคล้ายคลึงกันหลายประการที่สามารถพิจารณาได้แม้ว่าคุณจะไม่ได้ตั้งใจที่จะใช้ทั้งสองภาษาเพื่อการพัฒนาเว็บก็ตาม นี่คือสิ่งหลัก:

  • การเขียนโปรแกรมเชิงวัตถุประสงค์ (OOP) - ทั้งสองภาษาต้องการให้โปรแกรมเมอร์ใช้หลักการของวัตถุและความสัมพันธ์ระหว่างพวกเขาในขณะที่เขียนโค้ด ทั้งสองภาษารองรับรูปแบบ OOP เช่นอินเทอร์เฟซ การห่อหุ้ม และความหลากหลาย
  • การพัฒนาส่วนหน้า - ทั้งสองภาษาสามารถใช้เพื่อพัฒนาส่วนหน้าหรืออีกนัยหนึ่งคือส่วนต่อประสานผู้ใช้ที่ทำงานร่วมกับเซิร์ฟเวอร์ JavaScript สามารถฝังอยู่ใน HTML หรือเป็นไลบรารีของบุคคลที่สามบนหน้าไซต์ได้ และ Java สามารถทำงานในเบราว์เซอร์เป็นแอปเพล็ตจาวา
  • การพัฒนาแบ็กเอนด์ หรืออีกนัยหนึ่งคือ การพัฒนาซอฟต์แวร์เซิร์ฟเวอร์ Java ถูกนำมาใช้มานานแล้วในเทคโนโลยีแบ็กเอนด์โดยโปรเจ็กต์ Apache, JBoss และ WebSphere เทคโนโลยีใหม่,Node.js ช่วยให้คุณสามารถรันเซิร์ฟเวอร์ที่เขียนด้วย JavaScript
ความแตกต่างหลักระหว่าง Java กับ JavaScript

เริ่มแรกมีการพัฒนาภาษาเพื่อแก้ไขปัญหาที่แตกต่างไปจากเดิมอย่างสิ้นเชิง Java มีไว้สำหรับการสร้างแอปพลิเคชันที่มีคุณสมบัติครบถ้วน ในขณะที่ JavaScript เป็นภาษาสคริปต์สำหรับจัดระเบียบอินเทอร์เฟซบนเว็บ ต่อไปนี้เป็นข้อแตกต่างหลักๆ เพื่อให้เข้าใจความแตกต่างระหว่าง Java และ Javascript ได้ง่ายขึ้น:

  • ความสามารถในการคอมไพล์และการตีความ - ดังที่ฉันเขียนไว้ข้างต้น Java เป็นภาษาโปรแกรมที่คอมไพล์ และ JavaScript จะถูกตีความ ข้อแตกต่างเพียงอย่างเดียวคือการนำไปใช้งาน จริงๆ แล้ว ทั้งสองภาษาสามารถทำงานบนแพลตฟอร์มที่ต่างกันได้
  • การตรวจสอบประเภทคงที่และไดนามิก - Java ใช้การตรวจสอบประเภทคงที่ ประเภทของตัวแปรจะถูกตรวจสอบในเวลารวบรวม โปรแกรมเมอร์จะต้องระบุอย่างชัดเจนว่าตัวแปรจะเป็นประเภทใด - สตริง, ตัวเลข, เลขทศนิยม และอื่นๆ) JavaScript ก็เหมือนกับภาษาสคริปต์อื่นๆ ที่ใช้การพิมพ์แบบไดนามิก มีการตรวจสอบการใช้ประเภทที่ถูกต้อง ณ รันไทม์ โปรแกรมเมอร์ไม่จำเป็นต้องระบุประเภทของตัวแปรเมื่อประกาศ ทั้งสองวิธีมีข้อดีและข้อเสียมากมาย ความแตกต่างที่สำคัญที่สุดระหว่าง java และ javascript ก็คือการพิมพ์แบบคงที่ ข้อผิดพลาดส่วนใหญ่จะปรากฏในขั้นตอนการพัฒนา เนื่องจากคอมไพเลอร์รู้ว่าจะเกิดอะไรขึ้น โค้ดจะทำงานเร็วขึ้นและใช้หน่วยความจำน้อยลง ข้อดีของการพิมพ์แบบไดนามิกคือเขียนโปรแกรมได้เร็วและง่ายขึ้น
  • เห็นพ้อง - การใช้ความสามารถในการดำเนินการคำสั่งหลายลำดับในเวลาเดียวกันนั้นแตกต่างกันมากใน Java และ JavaScript Java อนุญาตให้คุณใช้หลายเธรดเพื่อรันงานแบบขนาน การใช้การทำงานพร้อมกันใน JavaScript มีความซับซ้อนมาก มีเฉพาะใน Node.js เท่านั้น บนเธรดหลัก สิ่งนี้จะถูกนำไปใช้ผ่านคิวการรันที่เรียกว่าลูปเหตุการณ์ ทั้งสองวิธีทำงานได้ดี แต่เธรด Java นั้นเร็วกว่า
  • คลาสและอ็อบเจ็กต์ - Java ใช้คลาสและความสัมพันธ์ระหว่างคลาสและอ็อบเจ็กต์ คุณสมบัติของวัตถุถูกกำหนดไว้ในชั้นเรียนและเป็นส่วนหนึ่งของชั้นเรียนที่ไม่เปลี่ยนรูป คุณสามารถสืบทอดคลาสจากคลาสอื่น จากนั้นคลาสเหล่านั้นจะได้รับคุณสมบัติทั้งหมดของคลาสผู้ปกครอง คุณอาจแปลกใจ แต่ไม่มีคลาสใน JavaScript มีเพียงวัตถุเท่านั้นที่นั่น และการสืบทอดก็มีการดำเนินการต่างกัน อ็อบเจ็กต์ทั้งหมดสามารถสืบทอดจากอ็อบเจ็กต์อื่นได้โดยตรง ในการดำเนินการนี้ เพียงระบุวัตถุที่ต้องการให้เป็นต้นแบบ
ควรใช้เมื่อใดดีที่สุด?

เช่นเดียวกับทุกภาษา การเลือก Java และ JavaScript ของคุณจะขึ้นอยู่กับหลายปัจจัย ตัวอย่างเช่น สิ่งที่คุณต้องการสร้างและทรัพยากรที่คุณมี JavaScript เหมาะกับเทคโนโลยีเว็บมากกว่า ในขณะที่ Java เหมาะสำหรับการสร้าง โปรแกรมปกติและสิ่งอื่นใด

จะดีกว่าถ้าเลือก Java หากคุณกำลังพัฒนา:

  • แอปพลิเคชัน Android;
  • ซอฟต์แวร์เชิงพาณิชย์
  • ซอฟต์แวร์คอมพิวเตอร์ทางวิทยาศาสตร์
  • ซอฟต์แวร์วิเคราะห์ข้อมูลขนาดใหญ่
  • โดย จุดประสงค์ทั่วไปหรือเครื่องมือรักษาความปลอดภัย
  • โปรแกรมเซิร์ฟเวอร์

ควรใช้ JavaScript ในพื้นที่ต่อไปนี้:

  • แอปพลิเคชันหน้าเดียวแบบไดนามิก (SPA);
  • แอปพลิเคชันส่วนหน้า (Query, AngularJS, Backbone.js, Ember.js, ReactJS);
  • แอปพลิเคชันเซิร์ฟเวอร์ (Node.js, MongoDB, Express.js และอื่นๆ)
  • แอปพลิเคชันมือถือ (PhoneGap, Ract Native ฯลฯ)
ข้อสรุป

ในบทความนี้ เรามาดูกันว่า Java แตกต่างจาก Javascript อย่างไร อย่างที่คุณเห็นมีความแตกต่างมากมายแม้ว่าภาษาจะมีชื่อคล้ายกันก็ตาม คำถามไหนดีกว่าจาวาหรือจาวาสคริปต์นั้นตอบยากเพราะภาษามีขอบเขตการใช้งานที่แตกต่างกันมาก ฉันหวังว่าข้อมูลนี้จะเป็นประโยชน์กับคุณ

โดยสรุป วิดีโอตลกเกี่ยวกับการเผชิญหน้าระหว่าง Java และ JavaScript จาก Game of Thrones: