Bỏ qua để đến nội dung

1 Non-primitive (Objects)

Trong JavaScript, Non-primitive (hay Reference types) bao gồm Objects, Arrays, Functions, Date, v.v. Các kiểu dữ liệu này được lưu trữ dưới dạng tham chiếu thay vì giá trị trực tiếp.

Mutable

Có thể thay đổi giá trị bên trong sau khi tạo

So sánh tham chiếu

Hai object giống nhau nhưng khác tham chiếu → KHÔNG bằng nhau

Copy tham chiếu

Khi gán, chỉ copy tham chiếu (cùng trỏ tới 1 object)


Object là kiểu dữ liệu dùng để lưu trữ tập hợp các giá trị dưới dạng cặp key-value (khóa-giá trị). Mỗi đối tượng có thể chứa nhiều thuộc tính (properties) và phương thức (methods).

let person = {
name: "Alice",
age: 25,
greet: function() {
console.log("Hello, " + this.name);
}
};

console.log(person.name); // "Alice"
console.log(person.age); // 25


Nhóm thao tácPhương thức / Cú pháp
Tạo & clone/mergeLiteral {}, Object.assign, spread {...a}, structuredClone
Đọc/ghi/xoá thuộc tínhDot obj.x, bracket obj['x'], gán, delete
Duyệtfor...in, Object.keys/values/entries
Biến đổi nâng caoDestructuring, rest/spread, computed key [expr]
Bất biến & cấu hìnhObject.freeze/seal, property descriptors (Object.defineProperty)
Kiểm tra & an toànin, hasOwn, ?. (optional chaining), ?? (nullish)
Prototype & kế thừaObject.create, Object.getPrototypeOf, isPrototypeOf
JSON serializeJSON.stringify/parse