Object.keys[]
trả về một mảng gồm các tên thuộc tính có thể đếm được của một đối tượng nhất định
Ví dụ
let Student = {
name: "Lisa",
age: 24,
marks: 78.9,
};
// get all keys of Student
let std1 = Object.keys[Student];
console.log[std1];
// Output: [ 'name', 'age', 'marks' ]
keys[] Cú pháp
Cú pháp của phương thức keys[]
là
Object.keys[obj]
Phương thức keys[]
, là một phương thức tĩnh, được gọi bằng tên lớp Object
keys[] Tham số
Phương thức keys[]
nhận
- obj - Đối tượng có vô số thuộc tính sẽ được trả về
keys[] Giá trị trả về
- Trả về một mảng các chuỗi đại diện cho tất cả các thuộc tính có thể đếm được của đối tượng đã cho
Ghi chú. Thứ tự của các thuộc tính giống như khi lặp lại chúng theo cách thủ công
Ví dụ. Sử dụng đối tượng. phím[]
// Array objects
const arr = ["A", "B", "C"];
console.log[Object.keys[arr]]; // ['0', '1', '2']
// array-like objects
const obj = { 65: "A", 66: "B", 67: "C" };
console.log[Object.keys[obj]]; // ['65', '66', '67']
// random key ordering
const obj1 = { 42: "a", 22: "b", 71: "c" };
console.log[Object.keys[obj1]]; // ['22', '42', '71']
// string => from ES2015+, non objects are coerced to object
const string = "code";
console.log[Object.keys[string]]; // [ '0', '1', '2', '3' ]
đầu ra
[ '0', '1', '2' ] [ '65', '66', '67' ] [ '22', '42', '71' ] [ '0', '1', '2', '3' ]
đề xuất đọc. Các mục đối tượng Javascript[]
Hãy cẩn thận. Toán tử
Object.keys[obj]
0 khớp với tất cả các khóa đối tượng, bao gồm các khóa trong chuỗi nguyên mẫu của đối tượngSử dụng
Object.keys[obj]
1 để kiểm tra khóa riêng của đối tượng và sẽ chỉ trả về Object.keys[obj]
2 nếu Object.keys[obj]
3 trực tiếp có sẵn trên Object.keys[obj]
4myObj.hasOwnProperty['key']
Trừ khi bạn có lý do cụ thể để sử dụng toán tử
Object.keys[obj]
0, việc sử dụng Object.keys[obj]
1 sẽ tạo ra kết quả mà hầu hết mã đang tìm kiếm Ví dụ
Sử dụng đối tượng. keys[] trên một mảng
const fruit = ["Chuối", "Cam", "Táo", "Xoài"];
const keys = Đối tượng. phím[trái cây];
Sử dụng đối tượng. keys[] trên một chuỗi
const fruit = "Banana";
const keys = Object. phím[trái cây];
Sử dụng đối tượng. keys[] trên một đối tượng
const person = {
firstName. "John",
Họ. "Doe",
tuổi. 50,
màu mắt. "blue"
};
const keys = Object. chìa khóa[người];
Định nghĩa và cách sử dụng
Phương thức Object.keys[]
trả về một đối tượng Array Iterator với các khóa của một đối tượng
Phương thức Object.keys[]
không thay đổi đối tượng ban đầu
cú pháp
Thông số
Tham sốMô tảđối tượngBắt buộc.Một đối tượng có thể lặp lại.
Giá trị trả về
TypeDescriptionMột mảngMột đối tượng Array Iterator chứa các khóa của một đối tượngHỗ trợ trình duyệt
Object.keys[]
là một tính năng ECMAScript6 [ES6]
ES6 [JavaScript 2015] được hỗ trợ trong tất cả các trình duyệt hiện đại
ChromeEdgeFirefoxSafariOperaCóCóCóCóCóObject.keys[]
không được hỗ trợ trong Internet Explorer 11 [hoặc cũ hơn]
Một đối tượng trong JavaScript là một tập hợp các cặp khóa-giá trị không theo thứ tự [
// Array objects
const arr = ["A", "B", "C"];
console.log[Object.keys[arr]]; // ['0', '1', '2']
// array-like objects
const obj = { 65: "A", 66: "B", 67: "C" };
console.log[Object.keys[obj]]; // ['65', '66', '67']
// random key ordering
const obj1 = { 42: "a", 22: "b", 71: "c" };
console.log[Object.keys[obj1]]; // ['22', '42', '71']
// string => from ES2015+, non objects are coerced to object
const string = "code";
console.log[Object.keys[string]]; // [ '0', '1', '2', '3' ]
1]. Mỗi khóa được gọi là một thuộc tính và là một chuỗi đại diện cho tên thuộc tính. Nếu một khóa không phải là chuỗi được cung cấp làm khóa, thì biểu diễn chuỗi hóa của nó sẽ được sử dụng. Giá trị của thuộc tính có thể thuộc bất kỳ loại dữ liệu nào phù hợp với thuộc tính về mặt khái niệm - một chuỗi, một số, một mảng hoặc thậm chí là một hàmMặt khác, một mảng là một tập hợp các giá trị được sắp xếp. Mỗi giá trị được gọi là một phần tử, được xác định bởi một chỉ số số. Một mảng có thể bao gồm các giá trị của hầu hết mọi loại. Ví dụ: nó có thể lưu trữ các mục như số nguyên, chuỗi, booleans, hàm, v.v. Mảng JavaScript cũng không bị giới hạn ở một loại duy nhất, nghĩa là một mảng nhất định có thể chứa nhiều loại khác nhau bên trong nó
Khi làm việc với JavaScript, tại một thời điểm cụ thể, bạn có thể cần xác định xem một khóa có tồn tại trong một đối tượng hoặc mảng nhất định hay không
Trong bài viết này, chúng ta sẽ thấy các phương pháp khác nhau mà chúng ta có thể sử dụng để kiểm tra xem một khóa cụ thể có tồn tại trong một đối tượng/mảng JavaScript hay không
Sử dụng toán tử Object.keys[obj]
0
Object.keys[obj]
Toán tử
Object.keys[obj]
0 trong JavaScript được sử dụng để xác định xem một thuộc tính nhất định có tồn tại trong một đối tượng hoặc các thuộc tính kế thừa của nó hay không [còn được gọi là chuỗi nguyên mẫu của nó]. Nếu thuộc tính được cung cấp tồn tại, toán tử Object.keys[obj]
0 trả về trueKiểm tra một đối tượngKiểm tra một mảngVì chúng tôi đã chứng minh rằng toán tử JavaScript
Object.keys[obj]
0 có thể được sử dụng với các đối tượng, nên bạn có thể hỏi liệu nó cũng có thể được sử dụng với các mảng hay không. Trong JavaScript, mọi thứ đều là một thể hiện của kiểu Đối tượng [ngoại trừ kiểu nguyên thủy], vì vậy mảng cũng hỗ trợ toán tử Object.keys[obj]
0Hãy xác nhận xem đó có phải là một thể hiện của loại Object
hay không bằng cách sử dụng toán tử
// Array objects
const arr = ["A", "B", "C"];
console.log[Object.keys[arr]]; // ['0', '1', '2']
// array-like objects
const obj = { 65: "A", 66: "B", 67: "C" };
console.log[Object.keys[obj]]; // ['65', '66', '67']
// random key ordering
const obj1 = { 42: "a", 22: "b", 71: "c" };
console.log[Object.keys[obj1]]; // ['22', '42', '71']
// string => from ES2015+, non objects are coerced to object
const string = "code";
console.log[Object.keys[string]]; // [ '0', '1', '2', '3' ]
8Bây giờ, quay lại sử dụng toán tử
Object.keys[obj]
0Điều này cũng sẽ trả về
Object.keys[obj]
2 cho các thuộc tính phương thức trên một kiểu mảng, trong đó mảng số là một thể hiệnSử dụng Phương pháp Object.keys[obj]
00
Object.keys[obj]
Trong JavaScript, hàm
Object.keys[obj]
00 được sử dụng để xác định xem đối tượng có thuộc tính được cung cấp làm thuộc tính riêng của nó hay không. Điều này rất quan trọng để xác định xem thuộc tính có được kế thừa bởi đối tượng hay không phải là của chính nóKiểm tra một đối tượngKiểm tra một mảngBạn có thể bắt đầu tự hỏi liệu điều này có hiệu quả với mảng không. Như chúng ta đã thiết lập trước đó, một mảng thực sự là một nguyên mẫu [ví dụ] của loại Object
, do đó, nó cũng có sẵn phương thức này
Sử dụng Phương pháp Object.keys[obj]
03
Object.keys[obj]
Phương thức tĩnh
Object.keys[obj]
04 tạo và trả về một mảng có các thành phần là chuỗi tên [khóa] thuộc tính của đối tượng. Điều này có thể được sử dụng để lặp qua các khóa của đối tượng, sau đó chúng ta có thể sử dụng khóa này để xác minh xem có khóa nào khớp với một khóa nhất định trong đối tượng hay khôngSử dụng Phương pháp Object.keys[obj]
05Object.keys[obj]
05 là một phương thức JavaScript kiểm tra hàm gọi lại trên tất cả các phần tử của mảng đang gọi và trả về Object.keys[obj]
2 nếu hàm gọi lại trả về Object.keys[obj]
2 cho bất kỳ phần tử nào trong số chúngSử dụng Object.keys[obj]
05 cho các đối tượngChúng tôi cũng có thể tùy chỉnh chức năng này thành một chức năng có thể tái sử dụng
Sử dụngObject.keys[obj]
05 cho một mảngMột lần nữa, giống như với đối tượng, chúng ta cũng có thể sử dụng một chức năng tái sử dụng được tùy chỉnh tương tự để kiểm tra sự tồn tại của một giá trị trong một mảng
Sử dụng Phương phápObject.keys[obj]
01Phương thức
Object.keys[obj]
01 của JavaScript sẽ trả về chỉ mục của phiên bản đầu tiên của một phần tử trong mảng. Nếu phần tử không tồn tại thì -1 được trả vềSử dụng Object.keys[obj]
01 cho một đối tượngLoại Object
trong JavaScript không thực sự hỗ trợ phương thức
Object.keys[obj]
05, vì các thuộc tính/khóa của nó vốn không có các vị trí được lập chỉ mục trong đối tượng. Thay vào đó, chúng ta có thể lấy các khóa của đối tượng dưới dạng một mảng và sau đó kiểm tra sự tồn tại của khóa bằng phương thức Object.keys[obj]
05Hãy xem hướng dẫn thực hành, thực tế của chúng tôi để học Git, với các phương pháp hay nhất, tiêu chuẩn được ngành chấp nhận và bao gồm bảng gian lận. Dừng các lệnh Git trên Google và thực sự tìm hiểu nó
Hãy nhớ rằng các đối tượng JavaScript không phải lúc nào cũng giữ nguyên thứ tự khóa, vì vậy chỉ mục được trả về có thể không có ý nghĩa như trong mảng. Trong trường hợp này, chỉ mục chủ yếu được sử dụng để xác định sự tồn tại của khóa
Đây là một ví dụ về việc sử dụng điều này trong một chức năng tiện ích
Sử dụngObject.keys[obj]
01 cho một mảngNhư chúng ta đã thấy trong ví dụ trước, mảng hỗ trợ phương thức
Object.keys[obj]
05, không giống như các đối tượng. Để sử dụng nó, hãy chuyển giá trị của mục bạn đang tìm kiếm cho Object.keys[obj]
05, sau đó giá trị này sẽ trả về vị trí của giá trị đó nếu nó tồn tại trong mảngPhần kết luận
Trong bài viết này, chúng ta đã thấy tất cả các cách có thể để chúng ta có thể kiểm tra xem một khóa hoặc mục có tồn tại trong một đối tượng/mảng JavaScript hay không. Chúng tôi trình bày cách sử dụng toán tử
Object.keys[obj]
0, phương thức Object.keys[obj]
00 và phương thức Object.keys[obj]
02. Chúng ta cũng đã thấy các đối tượng JS và mảng tương tự như thế nào trong đó các mảng kế thừa từ các đối tượng và do đó chứa nhiều phương thức giống nhau