Data types trong javascript


Javascript có hai dạng data types :
  1. Primitive Data Types

    1. String
    2. Number
    3. Boolean
    4. Null
    5. Undefined
    6. Symbols (ES6)
  2. Reference Data Types

    1. Arrays
    2. Object literals

Thêm nữa javascript là ngôn ngữ Dynamic type, có nghĩa là 1 biến có thể có nhiều loại kiểu dữ liệu, ta xem ví dụ sau nhé.

// myVariable có kiểu dữ liệu là string 
var myVariable = "Welcome to javascript";
console.log(myVariable); // Welstringcome to javascript

myVariable = 12;
console.log(myVariable); 
// Lúc này kiểu dữ liệu của myVariable đã chuyển thành kiểu Number

Vậy để kiểm Tra kiểu dữ liệu của 1 biến ta làm cách nào ? Ta có thề dùng typeof <tên biến cần kiểm tra>

// String
const myName = "Mr D";
console.log(typeof myName); // string

// Number
const myNumber  = 7;
console.log(typeof myNumber); // number

// Boolean
const myBool  = true;
console.log(typeof myBool); // true 


// Null
const myNull  = null;
console.log(typeof myNull); // null

// Undefined
const test;
console.log(typeof  test); // undefined

Đối với kiểu Reference Type thì ta cũng có thể kiểm tra kiểu dữ liệu bằng typeof

Ta thử tạo 1 array (mảng). Nhưng mà mảng là gì ? Thay vì lưu từng gía trị trong biến, một biến chỉ có 1 giá trị, ta có thể dùng mảng lưu nhiều giá trị, xem ví dụ sau nhé.

const animals = ['cat', 'dog','chicken'];
console.log(animals); // array

Object cũng tương tự Array có thể lưu nhiều giá trị nhưng có nhiều cái khác hơn Array, Object lưu dạng key/value (khóa/ giá trị), ta sẽ tìm hiểu Array và Object sau nhé.

// Tạo 1 object tên là info
const info = {
   name: "Mr D",
   age: 34
};

console.log(typeof info); // object

Trong javascript có những object có sẳn như object về thời gian Date. Ta có thể khởi tạo object Date để in ra thời gian hiện tại.

// khởi tạo 1 object
const date = new Date();
console.log(date); // in ra thời gian hiện tại trên máy của bạn
console.log(typeof date); // object

Như vậy là ta đã tìm hiểu về data type trong javascript rồi đấy cũng đơn giản ha ? ^_^