Hướng dẫn dùng objetos JavaScript - sử dụng các đối tượng JavaScript
Cú pháp gán phá hủy là một biểu thức JavaScript cho phép giải nén các giá trị khỏi các mảng hoặc thuộc tính từ các đối tượng, thành các biến riêng biệt.destructuring assignment syntax is a JavaScript expression that makes it possible to unpack values from arrays, or properties from objects, into distinct variables. Các biểu thức theo nghĩa đen của đối tượng và mảng cung cấp một cách dễ dàng để tạo các gói dữ liệu ad hoc. Bài tập phá hủy sử dụng cú pháp tương tự, nhưng ở phía bên trái của nhiệm vụ để xác định những giá trị nào để giải nén khỏi biến có nguồn gốc. Tương tự, bạn có thể phá hủy các đối tượng ở phía bên trái của nhiệm vụ. Khả năng này tương tự như các tính năng có trong các ngôn ngữ như Perl và Python. Đối với cả phá hủy đối tượng và mảng, có hai loại mẫu phá hủy: mẫu liên kết và mẫu gán, với các cú pháp hơi khác nhau. Trong các mẫu liên kết, mẫu bắt đầu bằng từ khóa khai báo (
Tất cả các biến chia sẻ cùng một tuyên bố, vì vậy nếu bạn muốn một số biến được chỉ định lại nhưng các biến khác chỉ được đọc, bạn có thể phải phá hủy hai lần-một lần với 1, một lần với 2.
Trong các mẫu gán, mẫu không bắt đầu với một từ khóa. Mỗi thuộc tính bị phá hủy được gán cho mục tiêu gán-có thể được khai báo trước bằng 0 hoặc 1 hoặc là thuộc tính của một đối tượng khác-nói chung, bất cứ điều gì có thể xuất hiện ở phía bên trái của biểu thức gán.
LƯU Ý: Các dấu ngoặc đơn 7 around the assignment statement are required when using object literal destructuring assignment without a declaration. 8 không phải là cú pháp độc lập hợp lệ, vì 9 ở phía bên trái được coi là một khối và không phải là một đối tượng theo nghĩa đen. Tuy nhiên, 0 là hợp lệ, cũng như 1.Nếu phong cách mã hóa của bạn không bao gồm dấu chấm phẩy kéo dài, biểu thức 7 cần được đi trước bởi dấu chấm phẩy hoặc nó có thể được sử dụng để thực thi một hàm trên dòng trước.Lưu ý rằng mẫu liên kết tương đương của mã ở trên không phải là cú pháp hợp lệ:
Giá trị mặc địnhMỗi thuộc tính bị phá hủy có thể có một giá trị mặc định. Giá trị mặc định được sử dụng khi thuộc tính không có hoặc có giá trị 3. Nó không được sử dụng nếu thuộc tính có giá trị 4.
Giá trị mặc định có thể là bất kỳ biểu thức nào. Nó sẽ chỉ được đánh giá khi cần thiết.
Tài sản nghỉ ngơiBạn có thể kết thúc một mô hình phá hủy với thuộc tính REST 5. Mẫu này sẽ lưu trữ tất cả các thuộc tính còn lại của đối tượng hoặc mảng vào một đối tượng hoặc mảng mới. 0Thuộc tính còn lại phải là cuối cùng trong mẫu và không phải có dấu phẩy kéo dài. 1Các mô hình phá hủy với các cú pháp khácTrong nhiều cú pháp mà ngôn ngữ liên kết một biến cho bạn, bạn cũng có thể sử dụng một mẫu phá hủy. Bao gồm các:
Đối với các tính năng cụ thể để phá hủy mảng hoặc đối tượng, vui lòng tham khảo các ví dụ riêng lẻ bên dưới. Ví dụMảng phá hủyBài tập biến cơ bản 2Phá hủy với nhiều yếu tố hơn nguồnTrong một mảng phá hủy từ một mảng độ dài n được chỉ định ở phía bên phải của gán, nếu số lượng biến được chỉ định ở phía bên trái của gán lớn hơn n, chỉ có các biến N đầu tiên được gán giá trị. Các giá trị của các biến còn lại sẽ không được xác định. 3Trao đổi biếnHai giá trị biến có thể được hoán đổi trong một biểu thức phá hủy. Không có sự phân công phá hủy, trao đổi hai giá trị yêu cầu một biến tạm thời (hoặc, trong một số ngôn ngữ cấp thấp, thủ thuật trao đổi XOR). 4Phân tích một mảng được trả về từ một hàmLuôn luôn có thể trả lại một mảng từ một hàm. Phá hủy có thể làm cho làm việc với một giá trị trả về mảng ngắn gọn hơn. Trong ví dụ này, 9 trả về các giá trị 0 làm đầu ra của nó, có thể được phân tích cú pháp trong một dòng duy nhất với sự phá hủy. 5Bỏ qua một số giá trị được trả vềBạn có thể bỏ qua các giá trị trả về mà bạn không quan tâm: 6Bạn cũng có thể bỏ qua tất cả các giá trị được trả về: Sử dụng một mẫu ràng buộc làm thuộc tính còn lạiTính chất còn lại của gán phá hủy mảng có thể là một mẫu liên kết hoặc mảng khác. Điều này cho phép bạn đồng thời giải nén các thuộc tính và chỉ số của mảng. 7 8Các mẫu ràng buộc này thậm chí có thể được lồng, miễn là mỗi thuộc tính REST là cuối cùng trong danh sách. 9Mặt khác, phá hủy đối tượng chỉ có thể có một định danh là thuộc tính còn lại. 0Giải nén các giá trị khỏi một biểu thức phù hợp thông thườngKhi phương thức biểu thức chính quy 1 tìm thấy một khớp, nó sẽ trả về một mảng chứa đầu tiên toàn bộ phần phù hợp của chuỗi và sau đó các phần của chuỗi khớp với từng nhóm dấu ngoặc đơn trong biểu thức chính quy. Bài tập phá hủy cho phép bạn giải nén các bộ phận ra khỏi mảng này một cách dễ dàng, bỏ qua toàn bộ trận đấu nếu không cần thiết. 1Sử dụng phá hủy mảng trên bất kỳ điều gì có thểArray phá hủy gọi giao thức có thể lặp lại của phía bên phải. Do đó, bất kỳ mảng có thể lặp lại, không nhất thiết, có thể được phá hủy. 2Không có thiết lập không thể được phá hủy dưới dạng mảng. 3Tererables chỉ được lặp lại cho đến khi tất cả các ràng buộc được gán. 4Các ràng buộc còn lại được đánh giá một cách háo hức và tạo ra một mảng mới, thay vì sử dụng điều khác nhau. 5Đối tượng phá hủyBài tập cơ bản 6Gán cho các tên biến mớiMột thuộc tính có thể được giải nén từ một đối tượng và được gán cho một biến có tên khác với thuộc tính đối tượng. 7Ở đây, ví dụ, 2 lấy từ đối tượng 3 thuộc tính có tên 4 và gán nó cho một biến cục bộ có tên 5.Gán cho các tên biến mới và cung cấp các giá trị mặc địnhMột tài sản có thể là cả hai
8Giải nén các thuộc tính khỏi các đối tượng được truyền dưới dạng tham số hàmCác đối tượng được truyền vào các tham số chức năng cũng có thể được giải nén thành các biến, sau đó có thể được truy cập trong cơ thể hàm. Đối với gán đối tượng, cú pháp phá hủy cho phép biến mới có cùng tên hoặc một tên khác với thuộc tính gốc và gán các giá trị mặc định cho trường hợp khi đối tượng gốc không xác định thuộc tính. Hãy xem xét đối tượng này, trong đó chứa thông tin về người dùng. 9Ở đây chúng tôi chỉ ra cách giải nén một thuộc tính của đối tượng được truyền vào một biến có cùng tên. Giá trị tham số 7 chỉ ra rằng thuộc tính 8 của đối tượng được truyền vào hàm phải được giải nén vào một biến có cùng tên, sau đó có thể được sử dụng trong hàm. 0Bạn có thể xác định tên của biến giải nén. Ở đây chúng tôi giải nén tài sản có tên 9 và đổi tên nó thành 0 để sử dụng trong cơ thể chức năng. 1Các đối tượng lồng nhau cũng có thể được giải nén. Ví dụ dưới đây cho thấy thuộc tính 1 được giải nén vào một biến gọi là 2. 2Đặt giá trị mặc định của tham số chức năngCác giá trị mặc định có thể được chỉ định bằng cách sử dụng 3 và sẽ được sử dụng làm giá trị biến nếu một thuộc tính được chỉ định không tồn tại trong đối tượng được truyền.Dưới đây chúng tôi hiển thị một hàm trong đó kích thước mặc định là 4, các tọa độ mặc định là 5 và bán kính mặc định là 25. 3Trong chữ ký chức năng cho 6 ở trên, phía bên trái bị phá hủy có giá trị mặc định của một đối tượng trống 7.Bạn cũng có thể đã viết chức năng mà không có mặc định đó. Tuy nhiên, nếu bạn bỏ đi giá trị mặc định đó, hàm sẽ tìm kiếm ít nhất một đối số được cung cấp khi được gọi, trong khi ở dạng hiện tại của nó, bạn có thể gọi 8 mà không cần cung cấp bất kỳ tham số nào. Nếu không, bạn cần ít nhất cung cấp một đối tượng trống theo nghĩa đen.Để biết thêm thông tin, hãy xem tham số mặc định> Tham số bị phá hủy với gán giá trị mặc định. Đối tượng lồng nhau và phá hủy mảng 4Cho phép lặp và phá hủy 5Tên thuộc tính đối tượng được tính toán và phá hủyTên tài sản được tính toán, giống như trên các chữ cái đối tượng, có thể được sử dụng với sự phá hủy. 6Định danh JavaScript không hợp lệ làm tên thuộc tínhPhá hủy có thể được sử dụng với các tên thuộc tính không phải là định danh JavaScript hợp lệ bằng cách cung cấp một định danh thay thế hợp lệ. 7Kết hợp mảng và phá hủy đối tượngMảng và phá hủy đối tượng có thể được kết hợp. Giả sử bạn muốn phần tử thứ ba trong mảng 9 bên dưới và sau đó bạn muốn thuộc tính 2 trong đối tượng, bạn có thể làm như sau: 8Chuỗi nguyên mẫu được tra cứu khi đối tượng được giải mãKhi giải mã một đối tượng, nếu một thuộc tính không được truy cập, nó sẽ tiếp tục tìm kiếm dọc theo chuỗi nguyên mẫu. 9Thông số kỹ thuật
Tính tương thích của trình duyệt webBảng BCD chỉ tải trong trình duyệt Xem thêm |