JavaScript

JavaScript — انواع داده ها در جاوااسکریپت (JS Types)

آخرین بروزرسانی: 1404/07/21

انواع داده ها در جاوااسکریپت (JavaScript Data Types)

در زبان جاوااسکریپت (JavaScript)، متغیرها می توانند هشت نوع داده مختلف را نگهداری کنند. آشنایی با انواع داده ها یا همان JS Types پایه ای ترین بخش یادگیری این زبان است و برای جلوگیری از خطا در برنامه ها اهمیت زیادی دارد.

انواع داده های اصلی در جاوااسکریپت

جاوااسکریپت دارای هشت نوع داده اصلی است که شامل مقادیر اولیه (Primitive) و شیءها (Objects) می شود:

  • String: رشته ای از کاراکترها که درون کوتیشن قرار می گیرد.
  • Number: عددی که می تواند صحیح یا اعشاری باشد.
  • BigInt: برای نمایش اعداد بسیار بزرگ استفاده می شود.
  • Boolean: مقدار منطقی true یا false.
  • Object: مجموعه ای از کلید و مقدار.
  • Undefined: متغیری که مقداری ندارد.
  • Null: مقدار تهی برای نشان دادن نبود شیء.
  • Symbol: یک شناسه ی یکتا برای مقادیر خاص.

نمونه کد انواع داده ها

// String
let color = "Yellow";
let lastName = "Johnson";

// Number
let length = 16;
let weight = 7.5;

// BigInt
let big = 1234567890123456789012345n;

// Boolean
let isOpen = true;
let isDone = 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 x;

// Null
let y = null;

// Symbol
const unique = Symbol();

عملگر typeof در جاوااسکریپت

برای تشخیص نوع داده یک متغیر از عملگر typeof استفاده می کنیم. این عملگر نوع متغیر یا عبارت را به صورت رشته ای بازمی گرداند:

typeof "John"; // "string"
typeof 3.14;   // "number"
typeof true;   // "boolean"
typeof undefined; // "undefined"

نکته: نوع null در جاوااسکریپت به اشتباه object بازگردانده می شود. این یک باگ قدیمی زبان است.

رشته ها (Strings)

رشته یا 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"';

اعداد (Numbers)

تمام اعداد در جاوااسکریپت به صورت عدد اعشاری (floating point) ذخیره می شوند و می توانند شامل یا بدون اعشار باشند:

let x1 = 34.00;
let x2 = 34;

برای نمایش اعداد بسیار بزرگ یا کوچک می توان از نماد علمی (Exponential Notation) استفاده کرد:

let y = 123e5;   // 12300000
let z = 123e-5;  // 0.00123

مقادیر بولی (Boolean)

نوع Boolean فقط دو مقدار ممکن دارد: true یا false. این نوع معمولاً در مقایسه ها استفاده می شود:

let x = 5;
(x == 8);  // false
(x != 8);  // true

مقدار Undefined و Null

Undefined به متغیری گفته می شود که هنوز مقداری به آن تخصیص داده نشده است. در مقابل، Null به معنای مقدار تهی است و برای خالی کردن یک متغیر استفاده می شود.

let carName; // undefined
let emptyValue = null; // null

نکته: رشته خالی ("") با undefined متفاوت است. رشته خالی دارای نوع string است.

برای مطالعه ی بیشتر، صفحه عملگرها در جاوااسکریپت و متغیرها در جاوااسکریپت را ببینید.