ประเภทข้อมูล JavaScript
ตัวแปร JavaScript สามารถเก็บประเภทข้อมูลที่แตกต่างกัน: ตัวเลข สตริง ออบเจ็กต์ และอื่นๆ:
let length = 16; // Number
let lastName = "Johnson"; // String
let x = {firstName:"John", lastName:"Doe"}; // Object
แนวคิดของประเภทข้อมูล
ในการเขียนโปรแกรม ชนิดข้อมูลเป็นแนวคิดที่สำคัญ
เพื่อให้สามารถทำงานกับตัวแปรได้ สิ่งสำคัญคือต้องรู้บางอย่างเกี่ยวกับประเภท
หากไม่มีประเภทข้อมูล คอมพิวเตอร์จะไม่สามารถแก้ไขได้อย่างปลอดภัย:
let x = 16 + "Volvo";
การเพิ่ม "Volvo" เป็นสิบหกสมเหตุสมผลหรือไม่ มันจะสร้างข้อผิดพลาดหรือจะสร้างผลลัพธ์หรือไม่?
JavaScript จะถือว่าตัวอย่างข้างต้นเป็น:
let x = "16" + "Volvo";
เมื่อเพิ่มตัวเลขและสตริง JavaScript จะถือว่าตัวเลขนั้นเป็นสตริง
ตัวอย่าง
let x = 16 + "Volvo";
ตัวอย่าง
let x = "Volvo" + 16;
JavaScript ประเมินนิพจน์จากซ้ายไปขวา ลำดับที่แตกต่างกันสามารถให้ผลลัพธ์ที่แตกต่างกัน:
จาวาสคริปต์:
let x = 16 + 4 + "Volvo";
ผลลัพธ์:
20Volvo
จาวาสคริปต์:
let x = "Volvo" + 16 + 4;
ผลลัพธ์:
Volvo164
ในตัวอย่างแรก JavaScript ถือว่า 16 และ 4 เป็นตัวเลข จนกว่าจะถึง "Volvo"
ในตัวอย่างที่สอง เนื่องจากตัวถูกดำเนินการแรกเป็นสตริง ตัวถูกดำเนินการทั้งหมดถือเป็นสตริง
ประเภท JavaScript เป็นไดนามิก
JavaScript มีประเภทไดนามิก ซึ่งหมายความว่าสามารถใช้ตัวแปรเดียวกันเพื่อเก็บข้อมูลประเภทต่างๆ ได้:
ตัวอย่าง
let x; // Now x is undefined
x = 5; // Now x is a Number
x = "John"; // Now x is a String
JavaScript Strings
สตริง (หรือสตริงข้อความ) คือชุดอักขระ เช่น "John Doe"
สตริงถูกเขียนด้วยเครื่องหมายคำพูด คุณสามารถใช้เครื่องหมายคำพูดเดี่ยวหรือคู่:
ตัวอย่าง
let carName1 = "Volvo XC60"; // Using double quotes
let carName2 = 'Volvo XC60'; // Using single quotes
คุณสามารถใช้เครื่องหมายคำพูดภายในสตริงได้ ตราบใดที่ไม่ตรงกับเครื่องหมายคำพูดที่อยู่รอบๆ สตริง:
ตัวอย่าง
let answer1 = "It's alright";
// Single quote inside double quotes
let answer2 = "He is called 'Johnny'";
// Single quotes inside double quotes
let answer3 = 'He is called "Johnny"';
// Double quotes inside single quotes
คุณจะได้เรียนรู้เพิ่มเติมเกี่ยวกับสตริงในภายหลังในบทช่วยสอนนี้
ตัวเลขจาวาสคริปต์
JavaScript มีตัวเลขเพียงประเภทเดียวเท่านั้น
สามารถเขียนตัวเลขโดยมีหรือไม่มีทศนิยม:
ตัวอย่าง
let x1 = 34.00; // Written with decimals
let x2 = 34; // Written without decimals
สามารถเขียนตัวเลขขนาดใหญ่พิเศษหรือเล็กพิเศษด้วยสัญกรณ์วิทยาศาสตร์ (เลขชี้กำลัง):
ตัวอย่าง
let y = 123e5; // 12300000
let z = 123e-5; // 0.00123
คุณจะได้เรียนรู้เพิ่มเติมเกี่ยวกับตัวเลขในภายหลังในบทช่วยสอนนี้
JavaScript บูลีน
บูลีนสามารถมีค่าได้สองค่าเท่านั้น: true
หรือfalse
.
ตัวอย่าง
let x = 5;
let y = 5;
let z = 6;
(x == y)
// Returns true
(x == z) // Returns
false
บูลีนมักใช้ในการทดสอบตามเงื่อนไข
คุณจะได้เรียนรู้เพิ่มเติมเกี่ยวกับการทดสอบตามเงื่อนไขในบทช่วยสอนนี้
JavaScript Arrays
อาร์เรย์ JavaScript เขียนด้วยวงเล็บเหลี่ยม
รายการอาร์เรย์คั่นด้วยเครื่องหมายจุลภาค
รหัสต่อไปนี้ประกาศ (สร้าง) อาร์เรย์ที่เรียกว่าcars
มีสามรายการ (ชื่อรถ):
ตัวอย่าง
const cars = ["Saab", "Volvo", "BMW"];
ดัชนีอาร์เรย์เป็นแบบศูนย์ ซึ่งหมายความว่ารายการแรกคือ [0] รายการที่สองคือ [1] เป็นต้น
คุณจะได้เรียนรู้เพิ่มเติมเกี่ยวกับอาร์เรย์ในบทช่วยสอนนี้ในภายหลัง
วัตถุ JavaScript
{}
วัตถุ JavaScript เขียน ด้วยวงเล็บปีกกา
คุณสมบัติอ็อบเจ็กต์เขียนเป็นคู่ของชื่อ:ค่า คั่นด้วยเครื่องหมายจุลภาค
ตัวอย่าง
const person = {firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"};
วัตถุ (บุคคล) ในตัวอย่างด้านบนมีคุณสมบัติ 4 ประการ ได้แก่ ชื่อ นามสกุล อายุ และ eyeColor
คุณจะได้เรียนรู้เพิ่มเติมเกี่ยวกับวัตถุในภายหลังในบทช่วยสอนนี้
ประเภทของโอเปอเรเตอร์
คุณสามารถใช้ตัวtypeof
ดำเนินการ JavaScript เพื่อค้นหาประเภทของตัวแปร JavaScript
ตัวtypeof
ดำเนินการส่งคืนชนิดของตัวแปรหรือนิพจน์:
ตัวอย่าง
typeof "" // Returns
"string"
typeof "John" // Returns
"string"
typeof "John Doe" // Returns
"string"
ตัวอย่าง
typeof 0 // Returns
"number"
typeof 314 // Returns
"number"
typeof 3.14 // Returns
"number"
typeof (3) // Returns
"number"
typeof (3 + 4) // Returns
"number"
คุณจะได้เรียนรู้เพิ่มเติมเกี่ยวกับtypeofในภายหลังในบทช่วยสอนนี้
ไม่ได้กำหนด
undefined
ใน JavaScript ตัวแปรที่ไม่มีค่าจะ มีค่า ประเภทยังเป็นundefined
.
ตัวอย่าง
let car; // Value is undefined,
type is undefined
ตัวแปรใดๆ สามารถล้างข้อมูลได้โดยการตั้งค่าundefined
เป็น ประเภทก็จะเป็นundefined
.
ตัวอย่าง
car = undefined; // Value is undefined,
type is undefined
ค่าว่าง
ค่าว่างไม่มีส่วนเกี่ยวข้องกับundefined
.
สตริงว่างมีทั้งค่าทางกฎหมายและประเภท
ตัวอย่าง
let car = ""; //
The value is
"", the typeof is "string"