Hướng dẫn object keys javascript w3schools - khóa đối tượng javascript w3schools

Thí dụ

Sử dụng object.keys [] trên một mảng:

const fruits = ["chuối", "cam", "táo", "xoài"]; const keys = object.keys [trái cây];
const keys = Object.keys[fruits];

Hãy tự mình thử »

Sử dụng object.keys [] trên một chuỗi:

const trái cây = "chuối"; const keys = object.keys [trái cây];
const keys = Object.keys[fruits];

Hãy tự mình thử »

Sử dụng object.keys [] trên một chuỗi:

const trái cây = "chuối"; const keys = object.keys [trái cây];
  firstName: "John",
  lastName: "Doe",
  age: 50,
  eyeColor: "blue"
};
const keys = Object.keys[person];

Hãy tự mình thử »

Sử dụng object.keys [] trên một chuỗi:

const trái cây = "chuối"; const keys = object.keys [trái cây];

Sử dụng object.keys [] trên một đối tượng:

const person = {& nbsp; & nbsp; firstName: "john", & nbsp; & nbsp; lastName: "doe", & nbsp; & nbsp; tuổi: 50, & nbsp; const keys = object.keys [người];

Định nghĩa và cách sử dụng

Phương thức Object.keys[] trả về một đối tượng lặp mảng 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 gốc.
Cú phápThông số
An iterable object.

Tham số

Sự mô tảPhương thức Object.keys[] không thay đổi đối tượng gốc.
Cú phápThông số

Tham số

Sự mô tả

sự vật

Yêu cầu.Giá trị trả vềLoại hìnhMột mảngMột đối tượng lặp mảng chứa các khóa của một đối tượng.
Hỗ trợ trình duyệtHỗ trợ trình duyệtHỗ trợ trình duyệtHỗ trợ trình duyệtHỗ trợ trình duyệt

Object.keys[] là tính năng ECMAScript6 [ES6].


Ecmascript 5 [2009] đã thêm rất nhiều phương thức đối tượng mới vào JavaScript.

Quản lý các đối tượng

// Tạo đối tượng với một đối tượng hiện có dưới dạng nguyên mẫu đối tượng.create []
Object.create[]

// Thêm hoặc thay đổi một đối tượng đối tượng đối tượng.defineProperty [đối tượng, thuộc tính, mô tả]
Object.defineProperty[object, property, descriptor]

// Thêm hoặc thay đổi thuộc tính đối tượng Object.defineProperIES [đối tượng, mô tả]
Object.defineProperties[object, descriptors]

// Truy cập thuộc tính Object.GetOwnPropertyDescriptor [đối tượng, thuộc tính]
Object.getOwnPropertyDescriptor[object, property]

// Trả về tất cả các thuộc tính dưới dạng đối tượng mảng.getOwnPropertyNames [Đối tượng]
Object.getOwnPropertyNames[object]

// truy cập đối tượng nguyên mẫu.getPrototype [Object]
Object.getPrototypeOf[object]

// Trả về các thuộc tính Enumable dưới dạng đối tượng mảng.Keys [đối tượng]
Object.keys[object]

Bảo vệ các đối tượng

// Ngăn chặn thêm thuộc tính vào một đối tượng.PreventExtensions [đối tượng]
Object.preventExtensions[object]

// Trả về true nếu các thuộc tính có thể được thêm vào một đối tượng.
Object.isExtensible[object]

// Ngăn chặn các thay đổi của các thuộc tính đối tượng [không phải giá trị] Object.Seal [Object]
Object.seal[object]

// Trả về true nếu đối tượng được niêm phong đối tượng.
Object.isSealed[object]

// Ngăn chặn mọi thay đổi đối với đối tượng.Freeze [Đối tượng]
Object.freeze[object]

// Trả về true nếu đối tượng là đối tượng đông lạnh.isfrozen [đối tượng]
Object.isFrozen[object]

Thay đổi giá trị tài sản

Cú pháp

Object.defineProperty [Object, Property, {value: value}]

Ví dụ này thay đổi giá trị thuộc tính:

Thí dụ

const person = {& nbsp; & nbsp; firstName: "john", & nbsp; Tên cuối cùng: "doe", & nbsp; ngôn ngữ: Việt Nam" };
  firstName: "John",
  lastName : "Doe",
  language : "EN"
};

// thay đổi một propertyObject.defineProperty [người, "ngôn ngữ", {value: "no"}];
Object.defineProperty[person, "language", {value : "NO"}];

Hãy tự mình thử »

Thay đổi dữ liệu meta

ES5 cho phép thay đổi dữ liệu meta thuộc tính sau:

Có thể viết: Đúng & NBSP; & nbsp; & nbsp; & nbsp; & nbsp; // giá trị tài sản có thể được thay đổi có thể thay đổi: true & nbsp; & nbsp; // thuộc tính có thể được liệt kê có thể định cấu hình: true & nbsp; // tài sản có thể được cấu hình lại
enumerable : true    // Property can be enumerated
configurable : true  // Property can be reconfigured

Có thể ghi: Sai & nbsp; & nbsp; & nbsp; & nbsp; // Giá trị tài sản không thể thay đổi Enumable: false & nbsp; & nbsp; // Thuộc tính không thể được liệt kê có thể định cấu hình: Sai // Thuộc tính không thể được cấu hình lại
enumerable : false   // Property can be not enumerated
configurable : false // Property can be not reconfigured

ES5 cho phép getters và setters được thay đổi:

// Xác định getter get: function [] {return ngôn ngữ} // Xác định bộ setter: function [value] {ngôn ngữ = value}
get: function[] { return language }
// Defining a setter
set: function[value] { language = value }

Ví dụ này làm cho ngôn ngữ chỉ đọc:

Object.defineProperty [người, "ngôn ngữ", {writable: false}];

Ví dụ này làm cho ngôn ngữ không thể phản đối:

Object.defineProperty [người, "ngôn ngữ", {có thể phản đối: false}];

Liệt kê tất cả các thuộc tính

Ví dụ này liệt kê tất cả các thuộc tính của một đối tượng:

Thí dụ

const person = {& nbsp; & nbsp; firstName: "john", & nbsp; Tên cuối cùng: "doe", & nbsp; ngôn ngữ: Việt Nam" };
  firstName: "John",
  lastName : "Doe",
  language : "EN"
};

// thay đổi một propertyObject.defineProperty [người, "ngôn ngữ", {value: "no"}];
Object.getOwnPropertyNames[person];  // Returns an array of properties

Hãy tự mình thử »

Thay đổi dữ liệu meta

ES5 cho phép thay đổi dữ liệu meta thuộc tính sau:

Thí dụ

const person = {& nbsp; & nbsp; firstName: "john", & nbsp; Tên cuối cùng: "doe", & nbsp; ngôn ngữ: Việt Nam" };
  firstName: "John",
  lastName : "Doe",
  language : "EN"
};

// thay đổi một propertyObject.defineProperty [người, "ngôn ngữ", {value: "no"}];
Object.keys[person];  // Returns an array of enumerable properties

Hãy tự mình thử »

Thay đổi dữ liệu meta

ES5 cho phép thay đổi dữ liệu meta thuộc tính sau:

Thí dụ

const person = {& nbsp; & nbsp; firstName: "john", & nbsp; Tên cuối cùng: "doe", & nbsp; ngôn ngữ: Việt Nam" };
const person = {
  firstName: "John",
  lastName : "Doe",
  language : "EN"
};

// thay đổi một propertyObject.defineProperty [người, "ngôn ngữ", {value: "no"}];
Object.defineProperty[person, "year", {value:"2008"}];

Hãy tự mình thử »

Thay đổi dữ liệu meta

ES5 cho phép thay đổi dữ liệu meta thuộc tính sau:

Thí dụ

const person = {& nbsp; & nbsp; firstName: "john", & nbsp; Tên cuối cùng: "doe", & nbsp; ngôn ngữ: Việt Nam" };
const person = {firstName:"John", lastName:"Doe"};

// thay đổi một propertyObject.defineProperty [người, "ngôn ngữ", {value: "no"}];
Object.defineProperty[person, "fullName", {
  get: function [] {return this.firstName + " " + this.lastName;}
}];

Hãy tự mình thử »

Thay đổi dữ liệu meta

Thí dụ

const person = {& nbsp; & nbsp; firstName: "john", & nbsp; Tên cuối cùng: "doe", & nbsp; ngôn ngữ: Việt Nam" };
const obj = {counter:0};

// thay đổi một propertyObject.defineProperty [người, "ngôn ngữ", {value: "no"}];
Object.defineProperty[obj, "reset", {
  get : function [] {this.counter = 0;}
}];
Object.defineProperty[obj, "increment", {
  get : function [] {this.counter++;}
}];
Object.defineProperty[obj, "decrement", {
  get : function [] {this.counter--;}
}];
Object.defineProperty[obj, "add", {
  set : function [value] {this.counter += value;}
}];
Object.defineProperty[obj, "subtract", {
  set : function [i] {this.counter -= i;}
}];

Hãy tự mình thử »
obj.reset;
obj.add = 5;
obj.subtract = 1;
obj.increment;
obj.decrement;

Hãy tự mình thử »



Bài Viết Liên Quan

Chủ Đề