انواع داده (Types)
در جاوااسکریپت، «نوع داده (Datatype)» یعنی مدلِ مقدار. مثل برگه نمره یا عکس؛ هرکدام نوعی دارند. با شناخت نوع ها، خطا کمتر می شود و کد قابل فهم تر می شود.
8 نوع داده اصلی
نوع ها: String، Number، BigInt، Boolean، Object، Undefined، Null، Symbol.
// String
let color = "Yellow";
let lastName = "Johnson";
// Number
let lengthVal = 16;
let weightVal = 7.5;
// BigInt
let bigA = 1234567890123456789012345n;
let bigB = BigInt(1234567890123456789012345);
// Boolean
let isOk = true;
let isFail = false;
// Object
const person = { firstName: "John", lastName: "Doe" };
// Array object
const cars = ["Saab", "Volvo", "BMW"];
// Date object
const date = new Date("2022-03-25");
// Undefined
let u1;
// Null
let n1 = null;
// Symbol
const s1 = Symbol();
const s2 = Symbol();
عملگر typeof برای تشخیص نوع
«typeof» نوعِ مقدار را برمی گرداند؛ مثل کارتِ شناساییِ مقدار.
typeof ""; // "string"
typeof "John"; // "string"
typeof "John Doe"; // "string"
typeof 0; // "number"
typeof 314; // "number"
typeof 3.14; // "number"
typeof (3); // "number"
typeof (3 + 4); // "number"
رشته ها (String)
رشته یعنی متن. همیشه داخل کوتیشن می آید؛ تک یا دوتایی.
let carName1 = "Volvo XC60";
let carName2 = 'Volvo XC60';
نقل قول داخل رشته مجاز است؛ فقط هم شکلِ بیرونی نباشد.
let answer1 = "It's alright";
let answer2 = "He is called 'Johnny'";
let answer3 = 'He is called "Johnny"';
عددها (Number) و نماد علمی
اعداد می توانند اعشاری باشند یا نباشند؛ هر دو «number» هستند.
let x1 = 34.00;
let x2 = 34;
اعداد خیلی بزرگ یا کوچک را با نماد نمایی بنویس.
let y = 123e5; // 12300000
let z = 123e-5; // 0.00123
Undefined و Null
«Undefined» یعنی هنوز ارزشی نگرفته. «Null» یعنی عمداً خالی اش کرده ای.
let carName; // undefined
رشته خالی با undefined فرق دارد؛ نوعش «string» است.
let car = ""; // مقدار: "" ، typeof: "string"
نکته: برای پیوندها، صفحه variables و const را ببین. همچنین انواع داده جاوااسکریپت را مرجع کن.
جمع بندی سریع
- 8 نوع داده داریم؛ بیشتر با string و number شروع کن.
- typeof مثل کارتِ شناساییِ مقدار است.
- null با undefined فرق دارد؛ null یعنی عمداً خالی.
- BigInt برای عددهای خیلی بزرگ است.