Cách sử dụng đối tượng (Object) trong JavaScript
Trong JavaScript, đối tượng (object) là một cấu trúc dữ liệu cho phép bạn lưu trữ các giá trị dưới dạng cặp khóa-giá trị. Đối tượng là một phần quan trọng trong JavaScript và được sử dụng rộng rãi để tổ chức và quản lý dữ liệu.
Dưới đây là hướng dẫn chi tiết về cách sử dụng đối tượng trong JavaScript:
1. Tạo Đối Tượng#
Bạn có thể tạo đối tượng bằng nhiều cách khác nhau:
a. Cú Pháp Literal
Cú Pháp:
let person = { name: "Alice", age: 30, greet: function() { console.log("Hello!"); } };Ví Dụ: ` let car = { make: "Toyota", model: "Corolla", year: 2020, startEngine: function() { console.log("Engine started"); } };
console.log(car.make); // "Toyota" car.startEngine(); // "Engine started" `
b. Sử Dụng Hàm Constructor
Cú Pháp: ` function Person(name, age) { this.name = name; this.age = age; this.greet = function() { console.log("Hello, my name is " + this.name); }; }
let person1 = new Person("Bob", 25); `
Ví Dụ:
let person1 = new Person("John", 40); person1.greet(); // "Hello, my name is John"
c. Sử Dụng Object.create()
Cú Pháp: ` let prototypeObject = { greet: function() { console.log("Hello!"); } };
let obj = Object.create(prototypeObject); `
Ví Dụ: ` let animal = { species: "Dog", speak: function() { console.log("Woof!"); } };
let dog = Object.create(animal); console.log(dog.species); // "Dog" dog.speak(); // "Woof!" `
2. Truy Cập và Sửa Đổi Thuộc Tính#
a. Sử Dụng Dấu Chấm
Cú Pháp: ` let person = { name: "Alice", age: 30 };
console.log(person.name); // "Alice" person.age = 31; `
b. Sử Dụng Dấu Ngoặc Vuông
Cú Pháp: ` let person = { name: "Alice", age: 30 };
console.log(person["name"]); // "Alice" person["age"] = 31; `
3. Thêm, Xóa Thuộc Tính#
a. Thêm Thuộc Tính
Cú Pháp: ` let person = { name: "Alice" };
person.age = 30; person["city"] = "New York"; `
b. Xóa Thuộc Tính
Cú Pháp: ` let person = { name: "Alice", age: 30 };
delete person.age; `
4. Phương Thức (Methods) và Thuộc Tính (Properties)#
Ví Dụ: ` let person = { name: "Alice", age: 30, greet: function() { console.log("Hello, my name is " + this.name); } };
person.greet(); // "Hello, my name is Alice" `
5. this Trong Đối Tượng#
Từ khóa this trong đối tượng trỏ đến đối tượng hiện tại mà hàm thuộc về.
Ví Dụ: ` let car = { make: "Toyota", model: "Corolla", getInfo: function() { return this.make + " " + this.model; } };
console.log(car.getInfo()); // "Toyota Corolla" `
6. Đối Tượng Con (Nested Objects)#
Đối tượng có thể chứa các đối tượng khác.
Ví Dụ: ` let company = { name: "TechCorp", address: { street: "123 Main St", city: "Metropolis" } };
console.log(company.address.city); // "Metropolis" `
7. Object.keys(), Object.values(), và Object.entries()#
Object.keys(): Trả về một mảng chứa các tên thuộc tính của đối tượng. ` let person = { name: "Alice", age: 30 };console.log(Object.keys(person)); // ["name", "age"] `
Object.values(): Trả về một mảng chứa các giá trị thuộc tính của đối tượng.console.log(Object.values(person)); // ["Alice", 30]Object.entries(): Trả về một mảng các cặp khóa-giá trị của đối tượng.console.log(Object.entries(person)); // [["name", "Alice"], ["age", 30]]
8. hasOwnProperty()#
Mô Tả: Kiểm tra xem đối tượng có thuộc tính với tên cụ thể hay không.
Cú Pháp: ` let person = { name: "Alice" };
console.log(person.hasOwnProperty("name")); // true console.log(person.hasOwnProperty("age")); // false `
9. Tóm Tắt#
Tạo Đối Tượng: Bạn có thể sử dụng cú pháp literal, hàm constructor, hoặc
Object.create().Truy Cập và Sửa Đổi: Sử dụng dấu chấm hoặc dấu ngoặc vuông.
Thêm và Xóa Thuộc Tính: Dễ dàng thêm và xóa thuộc tính từ đối tượng.
Phương Thức và Thuộc Tính: Đối tượng có thể chứa phương thức và thuộc tính.
this: Trỏ đến đối tượng hiện tại trong phương thức.Đối Tượng Con: Đối tượng có thể chứa các đối tượng khác.
Phương Thức Hữu Ích:
Object.keys(),Object.values(),Object.entries(), vàhasOwnProperty().
Hiểu rõ cách sử dụng đối tượng trong JavaScript giúp bạn tổ chức mã một cách hiệu quả, làm việc với dữ liệu phức tạp và xây dựng các ứng dụng mạnh mẽ hơn.
Bài liên quan trong # JavaScript
-
Cách tạo thông báo (notification) từ trình duyệt
minhdev -
Hàm javascript show thời gian hiện tại và có đếm giây
minhu -
Hàm chuyển tiêu đề tiếng việt thành URL bằng java script
minhu -
Ứng dụng ESLint để phát hiện lỗi và tối ưu hoá source code JavaScript trên VS
minhdev -
Hàm javascript load số tăng dần đẹp mắt như google analytics
minhu