เพื่อตรวจสอบว่าตัวแปรมีอยู่ใน JavaScript ต้องตรวจสอบกับ null และ undefined ดังโค้ด ตรวจสอบตัวแปร myVar: <html> <body> <script> var myVar = 20; if (myVar !== undefined && myVar !== null) { document.write(Variable exists); } </script>
เพื่อตรวจสอบว่าตัวแปรมีอยู่ใน JavaScript ต้องตรวจสอบกับ null และ undefined ดังโค้ด ตรวจสอบตัวแปร myVar: <html> <body> <script> var myVar = 20; if (myVar !== undefined && myVar !== null) { document.write(Variable exists); } </script>
ตามข้อกำหนด ECMAScript specification ระบุเกี่ยวกับการประกาศและการกำหนดค่าเริ่มต้นของตัวแปรไว้ดังนี้: A var statement declares variables that are scoped to the running execution contexts VariableEnvironment. Var variables are created when their containing Lexical Environment is instantiated and are i
Composite data type ใน JavaScript มีหลายค่าที่จัดกลุ่มไว้ด้วยกัน ทำงานเหมือนออบเจกต์ในคลาส Object และ Array เป็น composite data types มาทำความเข้าใจ Object: ออบเจกต์ถือเป็นคุณสมบัติของออบเจกต์และฟังก์ชันที่เกี่ยวข้องกับออบเจกต์ ใช้ dot notation: dept.dept_id; เห็นได้ว่า คุณสมบัติและเมธอดถูกเข้าถึงด้
เมื่อประกาศตัวแปรซ้ำ (re-declare) ใน JavaScript ค่าของตัวแปรยังคงเหมือนเดิม ไม่ถูกรีเซ็ตเป็น undefined ตัวอย่าง ลองดูตัวอย่าง ที่นี่เราประกาศตัวแปร age: <html> <body> <script> <!-- var age = 20; var age; if (age > 18) { doc
เพื่อตรวจสอบตัวเลขทศนิยมใน JavaScript ใช้เมธอด match() ซึ่งดึงค่าที่ตรงกับ regular expression ตัวอย่าง ลองรันโค้ดต่อไปนี้เพื่อตรวจสอบตัวเลขทศนิยม: <html> <body> <script> var str = 1.5; var re = /^[-+]?[0-9]+\.[0-9]+$/; var found = str.match(re);
ใน jQuery หากต้องการให้ event ทำงานบนหน้าเว็บ ควรเรียกภายใน $(document).ready() ทุกอย่างภายในจะโหลดทันทีที่ DOM โหลดเสร็จ ก่อนที่เนื้อหาหน้าจะโหลด $(document).ready(function() { alert(Document loaded successful!); }); ตัวอย่าง ใน JavaScript แบบ vanilla (ไม่ใช้ library) เพื่อให้ได้ผลลัพธ์เหมือนกั
เมื่อคุณสามารถใช้ตัวแปร JavaScript ก่อนที่จะประกาศได้ เรียกว่าทำด้วยเทคนิค Hoisting (การยกขึ้น) พาร์เซอร์อ่านฟังก์ชันทั้งหมดก่อนรันจริง พฤติกรรมที่ตัวแปรปรากฏว่าถูกใช้ก่อนการประกาศ เรียกว่า Hoisting: points = 200; var points; โค้ดข้างต้นทำงานเหมือนกับ: var points; points = 200; รายละเอียด Hoisting
ได้ ทำได้ ใน global scope คุณสามารถใช้ตัวแปรโดยไม่ต้องประกาศ ตัวแปร no var ชื่อ points จะค้นหาใน scope chain เนื่องจากไม่ได้ใช้คีย์เวิร์ด var <html> <body> <script> var rank = 5; points = 50; marks = 300; // Anonymous function (function()
JavaScript เป็นภาษาทเบาและ interpreted (แปลภาษา) ดังนั้นในบริบทของเว็บเบราว์เซอร์ คุณไม่จำเป็นต้องซื้อคอมไพเลอร์ สามารถเริ่มต้นด้วย text editor ธรรมดาเช่น Notepad ได้เลย เพื่ออำนวยความสะดวก ผู้จัดจำหน่ายหลายรายได้พัฒนา JavaScript editing tools ที่ดี เช่น: Microsoft FrontPage — HTML editor ยอดนิยม ม
ขอบเขต (scope) ของตัวแปรคือบริเวณของโปรแกรมที่ตัวแปรนั้นถูกกำหนด JavaScript มีขอบเขตตัวแปร 2 ระดับ: Global Variables — ตัวแปรระดับโลก มีขอบเขตทั่วทั้งโค้ด JavaScript Local Variables — ตัวแปรระดับท้องถิ่น 可見ได้เฉพาะภายในฟังก์ชันที่ประกาศไว้ พารามิเตอร์ของฟังก์ชันจะเป็น local ตลอด ภายใน body ของฟังก
Data types เก็บค่าต่างๆ มี 2 ประเภทใน JavaScript: Primitive และ Non-Primitive Primitive กำหนดค่า immutable และถูกนำเข้ามาโดยมาตรฐาน ECMAScript Primitive datatypes ประกอบด้วย: String — ลำดับของตัวอักษร เช่น demo, Hi Boolean — มีค่าสองค่า True หรือ False Number — แทนค่าตัวเลข เช่น 5, 20, 500 Undefined
Data Types ลักษณะพื้นฐานสำคัญของภาษาโปรแกรมคือชุดของชนิดข้อมูลที่รองรับ คือชนิดของค่าที่สามารถนำเสนอและจัดการได้ในภาษานั้น JavaScript เป็นภาษาไดนามิก (dynamic language) และมีโครงสร้างข้อมูล built-in บางอย่าง Data types เก็บค่าต่างๆ มี 2 ประเภทหลักใน JavaScript: Primitive และ Non-Primitive Primitive
ก่อนจะพูดถึงความแตกต่าง เรามาทำความเข้าใจ Primitive Data Types ก่อน Primitive กำหนดค่าที่ไม่เปลี่ยนแปลงได้ (immutable) และถูกนำเข้ามาโดยมาตรฐาน ECMAScript ล่าสุด JavaScript ทำงานกับ primitive data types 3 ชนิดหลัก: Numbers (เช่น 3, 310.20) Strings (เช่น This text string) Boolean (true หรือ false)
JavaScript เป็นภาษา ไม่มีชนิดข้อมูลคงที่ (untyped) ตัวแปรสามารถเก็บค่าชนิดข้อมูลใดๆ ได้ ใช้คีย์เวิร์ด var สำหรับการประกาศ ไม่ว่าจะเป็นตัวเลขหรือสตริง วิธีประกาศตัวเลขใน JavaScript: var points = 100; var rank = 5; ตัวอย่าง ลองรันโค้ดต่อไปนี้เพื่อเรียนรู้การประกาศตัวเลข: <html> <body>
JavaScript เป็นภาษา ไม่มีชนิดข้อมูลคงที่ (untyped) หมายความว่าตัวแปร JavaScript สามารถเก็บค่าชนิดข้อมูลใดๆ ได้ ไม่ต้องระบุชนิดข้อมูล مثل C, C++, Java ในการประกาศตัวแปรใน JavaScript ต้องใช้คีย์เวิร์ด var ไม่ว่าจะเป็นสตริงหรือตัวเลข ก็ใช้ var สำหรับการประกาศ วิธีประกาศสตริงใน JavaScript: var name = Da
ตัวแปร Boolean ใน JavaScript มีค่าสองค่า คือ True หรือ False ตัวอย่าง ลองรันโค้ดต่อไปนี้เพื่อเรียนรู้การทำงานกับตัวแปร Boolean: <!DOCTYPE html> <html> <body> <p>35 > 20</p> <button onclick=myValue()>Click for result</button> <p id=te
ออบเจกต์ Boolean แทนค่าสองค่า คือ true หรือ false หากพารามิเตอร์ value ถูกละเว้น หรือเป็น 0, -0, null, false, NaN, undefined, หรือสตริงว่าง () ออบเจกต์จะมีค่าเริ่มต้นเป็น false new Boolean() ใช้สร้างออบเจกต์ Boolean ใหม่ ใช้ syntax ดังนี้: var val = new Boolean(value); ตัวอย่าง ตัวอย่างการใช้เมธอด t
ได้ คุณสามารถใช้ตัวแปร JavaScript ก่อนที่จะประกาศได้ ด้วยกลไกที่เรียกว่า Hoisting (การยกขึ้น) พาร์เซอร์จะอ่านฟังก์ชันทั้งหมดก่อนรันจริง พฤติกรรมที่ตัวแปรปรากฏว่าถูกใช้ก่อนการประกาศ เรียกว่า Hoisting: rank = 5; var rank; โค้ดข้างต้นทำงานเหมือนกับ: var rank; rank = 5; รายละเอียดเพิ่มเติม มีเพียง กา
ทั้ง onclick และ href มีพฤติกรรมต่างกันเมื่อเรียก JavaScript โดยตรง นอกจากนี้ สคริปต์ใน href จะไม่ทำงานหากช่วงเวลาระหว่างการคลิกสองครั้งสั้นเกินไป นี่คือเวลาระหว่างการคลิกสองครั้ง (double-click timing) ตัวอย่าง ตัวอย่างการใช้งาน href เทียบกับ onClick ใน JavaScript: <html> <head>
ปัจจุบันเกือบทุกเว็บเบราว์เซอร์รองรับ JavaScript แล้ว หากผู้ใช้ปิดใช้งาน JavaScript สามารถใช้แท็ก <noscript> เพื่อแสดงข้อความทางเลือกได้ แท็ก HTML <noscript> ใช้จัดการเบราว์เซอร์ที่รู้จักแท็ก <script> แต่ไม่รองรับสคริปติ้ง แท็กนี้จะแสดงข้อความทางเลือกเมื่อ JavaScript ไม่ทำงาน ตัวอย