5 Hàm JavaScript Về Object Mà Mọi Lập Trình Viên Cần Phải Biết Để Trở Thành Chuyên Gia
Chào mừng các bạn đã trở lại với bài viết tiếp theo trong chuỗi series về JavaScript! Trong bài viết này, tôi sẽ giới thiệu với các bạn 5 hàm quan trọng về Object trong JavaScript mà mọi lập trình viên nên nắm vững nếu muốn nâng cao kỹ năng lập trình của mình. Những hàm này không chỉ giúp bạn viết mã nhanh hơn mà còn giúp bạn làm việc hiệu quả hơn với các đối tượng. Hãy cùng khám phá nhé!
1. hàm assign()
Hàm Object.assign()
rất hữu ích khi bạn cần kết hợp hoặc khởi tạo các đối tượng. Hàm này cho phép bạn sao chép các thuộc tính từ đối tượng nguồn sang đối tượng mục tiêu, giúp bạn thiết lập các giá trị mặc định dễ dàng hơn.
Ví dụ:
javascript
function foo(options) {
const defaults = {
maxPoints: 5000,
startingCash: 100,
rounds: 3,
};
// { maxPoints: 20000, startingCash: 100, rounds: 5 }
options = Object.assign(defaults, options);
}
foo({
maxPoints: 20000,
rounds: 5
});
Lưu ý: Bạn có thể sử dụng cú pháp spread (...)
để đạt được mục đích tương tự.
2. Hàm defineProperty()
Hàm Object.defineProperty()
cho phép bạn định nghĩa các thuộc tính mới cho một đối tượng và tùy chỉnh các thuộc tính đó. Điều này rất tiện lợi khi bạn muốn tạo ra các thuộc tính không thay đổi được.
Ví dụ:
javascript
const person = {
name: "Dom",
age: 28,
favoriteColor: "Blue"
};
// Thêm thuộc tính không thể thay đổi "country"
Object.defineProperty(person, "country", {
value: "Australia",
writable: false
});
// Không hoạt động
person.country = "New Zealand";
Khuyên bạn nên tìm hiểu thêm tài liệu về hàm này để khai thác tối đa sức mạnh của nó!
3. Hàm entries()
Hàm Object.entries()
lấy các cặp Key-Value trong một đối tượng và chuyển chúng thành một mảng hai chiều. Hàm này rất hữu ích trong việc lặp qua các thuộc tính của đối tượng.
Ví dụ:
javascript
const color = {
red: 0,
green: 149,
blue: 120
};
for (const [key, value] of Object.entries(color)) {
console.log(`${key} => ${value}`);
}
/*
Output:
red => 0
green => 149
blue => 120
*/
Hãy ghi nhớ hàm này, vì nó có thể giúp bạn trong nhiều tình huống!
4. Hàm fromEntries()
Hàm Object.fromEntries()
cho phép bạn chuyển đổi một mảng hai chiều các cặp Key-Value thành một đối tượng. Điều này cực kỳ hữu ích khi bạn cần xây dựng một đối tượng từ một mảng đã tồn tại.
Ví dụ:
javascript
const colorArray = [
["red", 0],
["green", 149],
["blue", 120],
];
// { red: 0, green: 149, blue: 120 }
const color = Object.fromEntries(colorArray);
Lưu ý: Hàm này có thể làm việc trên bất kỳ kiểu lặp nào, không chỉ riêng mảng.
5. Hàm freeze()
Cuối cùng, hàm Object.freeze()
giúp bạn khóa một đối tượng, ngăn không cho thêm hoặc thay đổi thuộc tính. Điều này rất hữu ích khi bạn muốn bảo vệ cấu trúc của một đối tượng.
Ví dụ:
javascript
const person = {
name: "Dom",
age: 28,
favoriteColor: "Blue"
};
// Không có thao tác nào hoạt động ❌
person.country = "Australia";
person.name = "Rodney";
delete person.age;
Mẹo: Bạn có thể sử dụng hàm Object.unfreeze()
để đảo ngược hiệu ứng này.
Cảm ơn các bạn đã theo dõi bài viết! Hy vọng rằng những thông tin này sẽ giúp ích cho các bạn trong hành trình trở thành lập trình viên chuyên nghiệp!
source: viblo