Các đối tượng trong JavaScript là các loại dữ liệu không nguyên thủy chứa một bộ sưu tập các cặp giá trị khóa không có thứ tự.
Như bạn có thể thấy trong hình trên, khóa là thuộc tính và mỗi giá trị đối tượng phải có khóa.
Khi tương tác với các đối tượng, các tình huống có thể phát sinh yêu cầu bạn kiểm tra xem một khóa cụ thể có tồn tại không. Điều quan trọng cần lưu ý là nếu bạn biết một khóa tồn tại tự động có nghĩa là một giá trị tồn tại. Giá trị này có thể là bất cứ điều gì - thậm chí trống rỗng, null hoặc không xác định.
Trong bài viết này, chúng tôi sẽ tìm hiểu các phương pháp khác nhau để kiểm tra xem khóa của một đối tượng có tồn tại trong JavaScript hay không.
Trong trường hợp bạn đang vội, đây là hai phương pháp tiêu chuẩn chúng ta có thể sử dụng để kiểm tra:
// Using in operator
'key' in object
// Using hasOwnProperty[] method
object.hasOwnProperty['key']
Bạn có thể sử dụng toán tử JavaScript
'key' in object
2 để kiểm tra xem thuộc tính/khóa được chỉ định có tồn tại trong một đối tượng không. Nó có cú pháp đơn giản và trả về 'key' in object
3 nếu thuộc tính/khóa được chỉ định tồn tại trong đối tượng được chỉ định hoặc chuỗi nguyên mẫu của nó.Cú pháp khi sử dụng toán tử
'key' in object
2 là:'key' in object
Giả sử chúng ta có một đối tượng chứa chi tiết của người dùng:
let user = {
name: "John Doe",
age: 40
};
Chúng ta có thể kiểm tra xem một khóa có tồn tại với toán tử
'key' in object
2 như được thấy dưới đây không:'name' in user; // Returns true
'hobby' in user; // Returns false
'age' in user; // Returns true
Lưu ý: Giá trị trước từ khóa
'key' in object
2 phải thuộc loại 'key' in object
7 hoặc 'key' in object
8.Cách kiểm tra xem một đối tượng có 'key' in object
9 trong JavaScript với phương thức let user = {
name: "John Doe",
age: 40
};
0 không
'key' in object
let user = {
name: "John Doe",
age: 40
};
Bạn có thể sử dụng phương thức JavaScript
let user = {
name: "John Doe",
age: 40
};
0 để kiểm tra xem một đối tượng được chỉ định có thuộc tính đã cho làm thuộc tính của nó không. TPhương pháp của anh ấy khá giống với toán tử
'key' in object
2. Phải mất một 'key' in object
7 và sẽ trả lại 'key' in object
3 nếu 'key' in object
9 tồn tại trong đối tượng và let user = {
name: "John Doe",
age: 40
};
6 nếu không.Cú pháp khi sử dụng phương thức
let user = {
name: "John Doe",
age: 40
};
0 là:object.hasOwnProperty['key']
Giả sử chúng ta có một đối tượng chứa chi tiết của người dùng:
let user = {
name: "John Doe",
age: 40
};
Chúng ta có thể kiểm tra xem một khóa có tồn tại với toán tử
'key' in object
2 như được thấy dưới đây không:user.hasOwnProperty['name']; // Returns true
user.hasOwnProperty['hobby']; // Returns false
user.hasOwnProperty['age']; // Returns true
Lưu ý: Giá trị trước từ khóa
'key' in object
2 phải thuộc loại 'key' in object
7 hoặc 'key' in object
8.Cách kiểm tra xem một đối tượng có
'key' in object
9 trong JavaScript với phương thức let user = {
name: "John Doe",
age: 40
};
0 khôngif ["name" in user] {
console.log["the key exists on the object"];
}
// Or
if [user.hasOwnProperty["name"]] {
console.log["the key exists on the object"];
}
Bạn có thể sử dụng phương thức JavaScript let user = {
name: "John Doe",
age: 40
};
0 để kiểm tra xem một đối tượng được chỉ định có thuộc tính đã cho làm thuộc tính của nó không. T
let user = {
name: "John Doe",
age: 40
};
Phương pháp của anh ấy khá giống với toán tử
'key' in object
2. Phải mất một 'key' in object
7 và sẽ trả lại 'key' in object
3 nếu 'key' in object
9 tồn tại trong đối tượng và let user = {
name: "John Doe",
age: 40
};
6 nếu không.Cú pháp khi sử dụng phương thức
let user = {
name: "John Doe",
age: 40
};
0 là:Lưu ý: Giá trị bạn chuyển vào phương thức
let user = {
name: "John Doe",
age: 40
};
0 phải thuộc loại 'key' in object
7 hoặc 'key' in object
8.let user = {
name: "John Doe",
age: 40
};
console.log[user?.name]; // Returns John Doe
console.log[user?.hobby]; // Returns undefined
console.log[user?.age]; // Returns 40
Vì bây giờ chúng ta biết rằng các phương pháp này tồn tại, giờ đây chúng ta có thể sử dụng một điều kiện để kiểm tra và thực hiện bất kỳ hoạt động nào chúng ta muốn thực hiện:
if [user?.hobby !== undefined] {
console.log["The key exists on the object"];
}
Gói lên
'key' in object
0Trong bài viết này, chúng tôi đã học được cách kiểm tra xem một đối tượng có khóa bằng hai phương pháp tiêu chuẩn không. Sự khác biệt giữa hai phương thức là
'name' in user; // Returns true
'hobby' in user; // Returns false
'age' in user; // Returns true
2 tìm kiếm một khóa trong một đối tượng trong khi toán tử 'key' in object
2 tìm khóa trong đối tượng và chuỗi nguyên mẫu của nó.'key' in object
1Có những phương pháp khác bạn có thể sử dụng, nhưng đến một lúc nào đó chúng có thể trở nên quá phức tạp và không dễ hiểu. Họ cũng có thể thất bại khi được thử nghiệm chống lại một số điều kiện nhất định.
Ví dụ: chúng ta có thể sử dụng chuỗi tùy chọn, vì vậy nếu một khóa được chỉ định không tồn tại, nó sẽ trả về
'name' in user; // Returns true
'hobby' in user; // Returns false
'age' in user; // Returns true
4:Vì vậy, chúng tôi có thể tạo ra một điều kiện mà khi nó không bằng
'name' in user; // Returns true
'hobby' in user; // Returns false
'age' in user; // Returns true
4, điều đó có nghĩa là chính tồn tại: