สตริง, จำนวน, บูลีอาร์เรย์วัตถุ
ชนิดข้อมูล JavaScript
ตัวแปร JavaScript ที่สามารถเก็บข้อมูลประเภทหลาย numbers, strings, arrays, objects และอื่น ๆ :
var length = 16; // Number
var lastName = "Johnson"; // String
var cars = ["Saab", "Volvo", "BMW"]; // Array
var
x = {firstName:"John", lastName:"Doe"}; // Object
แนวคิดของชนิดข้อมูล
ในการเขียนโปรแกรม, ชนิดข้อมูลที่เป็นแนวคิดที่สำคัญ
เพื่อให้สามารถใช้งานบนตัวแปรมันเป็นสิ่งสำคัญที่จะรู้ว่าบางสิ่งบางอย่างเกี่ยวกับชนิด
โดยไม่ต้องชนิดข้อมูลคอมพิวเตอร์ไม่สามารถแก้ปัญหานี้ได้อย่างปลอดภัย:
var x = 16 + "Volvo";
มันทำให้รู้สึกใด ๆ เพื่อเพิ่ม "Volvo" สิบหก? มันจะสร้างข้อผิดพลาดหรือมันจะสร้างผลลัพธ์หรือไม่?
JavaScript จะปฏิบัติตัวอย่างข้างต้นเป็น:
var x =
"16" + "Volvo";
เมื่อมีการเพิ่มจำนวนและสตริง, JavaScript จะรักษาจำนวนเป็นสตริง
JavaScript ประเมินการแสดงออกจากซ้ายไปขวา ลำดับที่แตกต่างกันสามารถให้ผลลัพธ์ที่แตกต่างกัน
ในตัวอย่างแรก, JavaScript ถือว่า 16 และ 4 เป็นตัวเลขจนกว่าจะถึง "Volvo"
ในตัวอย่างที่สองตั้งแต่ตัวถูกดำเนินการแรกคือสตริงตัวถูกดำเนินการทั้งหมดจะถือว่าเป็นสตริง
JavaScript ได้ประเภทแบบไดนามิก
JavaScript ได้ประเภทแบบไดนามิก ซึ่งหมายความว่าตัวแปรเดียวกันสามารถใช้เป็นชนิดที่แตกต่างกัน
ตัวอย่าง
var x;
// Now x is undefined
var x = 5;
// Now x is a Number
var x = "John"; // Now x is a String
JavaScript Strings
สตริง (หรือสตริงข้อความ) เป็นชุดของตัวละครเช่น "John Doe"
สตริงจะถูกเขียนด้วยคำพูด คุณสามารถใช้คำพูดเดียวหรือสองครั้ง:
ตัวอย่าง
var
carName = "Volvo XC60"; // Using double quotes
var
carName = 'Volvo XC60'; // Using single quotes
คุณสามารถใช้คำพูดภายในสตริงตราบเท่าที่พวกเขาไม่ตรงกับคำพูดรอบสตริง:
ตัวอย่าง
var answer = "It's alright";
// Single quote inside double quotes
var answer = "He is called 'Johnny'";
// Single quotes inside double quotes
var answer = 'He is called "Johnny"';
// Double quotes inside single quotes
ลองตัวเอง» คุณจะได้เรียนรู้เพิ่มเติมเกี่ยวกับสายต่อไปในการกวดวิชานี้
เบอร์ JavaScript
JavaScript มีเพียงหนึ่งชนิดของตัวเลข
หมายเลขสามารถเขียนได้ด้วยหรือไม่มีทศนิยม:
ตัวอย่าง
var x1 = 34.00; // Written with decimals
var x2 = 34; // Written without decimals
ตัวเลขขนาดเล็กขนาดใหญ่พิเศษหรือพิเศษสามารถเขียนได้ด้วยวิทยาศาสตร์ (ชี้แจง) สัญกรณ์:
คุณจะได้เรียนรู้เพิ่มเติมเกี่ยวกับหมายเลขในภายหลังในการกวดวิชานี้
Booleans JavaScript
booleans สามารถมีสองค่า: จริงหรือเท็จ
ตัวอย่าง
var
x = true;
var y = false;
booleans มักจะใช้ในการทดสอบเงื่อนไข
คุณจะเรียนรู้เพิ่มเติมเกี่ยวกับการทดสอบตามเงื่อนไขต่อไปในการกวดวิชานี้
อาร์เรย์ JavaScript
อาร์เรย์ JavaScript เขียนด้วยวงเล็บ
รายการอาร์เรย์จะถูกคั่นด้วยเครื่องหมายจุลภาค
รหัสต่อไปนี้ประกาศ (สร้าง) อาร์เรย์ที่เรียกว่ารถที่มีสามรายการ (ชื่อรถ):
ดัชนีอาร์เรย์จะ zero-based ซึ่งหมายความว่ารายการแรกเป็น [0], สองคือ [1] และอื่น ๆ
คุณจะได้เรียนรู้เพิ่มเติมเกี่ยวกับอาร์เรย์ต่อไปในการกวดวิชานี้
วัตถุ JavaScript
วัตถุ JavaScript เขียนด้วยวงเล็บปีกกา
คุณสมบัติของวัตถุจะถูกเขียนเป็นชื่อ: คู่ค่าคั่นด้วยเครื่องหมายจุลภาค
วัตถุ (คน) ในตัวอย่างข้างต้นมี 4 คุณสมบัติ: firstName, lastName, age และ eyeColor
คุณจะเรียนรู้เพิ่มเติมเกี่ยวกับวัตถุในภายหลังในการกวดวิชานี้
ผู้ประกอบการ typeof
คุณสามารถใช้ JavaScript typeof ผู้ประกอบการเพื่อหาชนิดของตัวแปร JavaScript นี้:
ตัวอย่าง
typeof "John" // Returns string
typeof 3.14 // Returns number
typeof false // Returns boolean
typeof [1,2,3,4] // Returns object
typeof {name:'John', age:34} // Returns object
ลองตัวเอง» ผู้ประกอบการส่งกลับ typeof "object" สำหรับอาร์เรย์เพราะใน JavaScript อาร์เรย์เป็นวัตถุ
Undefined
ใน JavaScript ตัวแปรโดยไม่ต้องมีค่ามีค่า undefined typeof ยังเป็น undefined
ตัวแปรใด ๆ ที่สามารถอบโดยการตั้งค่าที่จะ undefined ชนิดนอกจากนี้ยังจะ undefined
ค่าที่ว่างเปล่า
ค่าว่างมีอะไรจะทำอย่างไรกับการที่ไม่ได้กำหนด
ตัวแปรสตริงที่ว่างเปล่ามีทั้งมูลค่าและประเภท
Null
ใน JavaScript null คือ "อะไร" มันควรจะเป็นสิ่งที่ไม่ได้อยู่
แต่น่าเสียดายที่ใน JavaScript, ชนิดข้อมูลของ null เป็นวัตถุ
คุณสามารถคิดว่ามันเป็นข้อผิดพลาดใน JavaScript ที่ typeof null เป็นวัตถุ มันควรจะเป็น null
คุณสามารถว่างวัตถุโดยการตั้งค่าให้ null:
นอกจากนี้คุณยังสามารถว่างวัตถุโดยการตั้งค่าให้ undefined :
ความแตกต่างระหว่าง Undefined และ Null
typeof undefined
// undefined
typeof null
// object
null === undefined
// false
null == undefined
// true
ลองตัวเอง»