Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> JavaScript

Hợp nhất (merge) thuộc tính 2 Object JavaScript động


2 cách merge object động:

1) Object.assign()

Sao chép property từ source object(s) vào target object. Trả về target object.

Ví dụ 1: Key khác nhau

<html> <body> <script> var target = { a: "ram", b: "rahim" }; var source = { c: "akbar", d: "anthony" }; var returnedTarget = Object.assign(target, source); document.write(JSON.stringify(target)); document.write(JSON.stringify(returnedTarget)); </script> </body> </html>

Kết quả

{"a":"ram","b":"rahim","c":"akbar","d":"anthony"} {"a":"ram","b":"rahim","c":"akbar","d":"anthony"}

Ví dụ 2: Key trùng lặp (source ghi đè target)

<html> <body> <script> var target = { a: "ram", b: "rahim" }; var source = { b: "akbar", d: "anthony" }; var returnedTarget = Object.assign(target, source); document.write(JSON.stringify(target) + "</br>"); document.write(JSON.stringify(returnedTarget)); </script> </body> </html>

Kết quả

{"a":"ram","b":"akbar","d":"anthony"} {"a":"ram","b":"akbar","d":"anthony"}

2) Spread Operator (...)

Mở rộng object thành các cặp key-value, merge thành object mới.

Cú pháp

var merged = {...obj1, ...obj2, ...}

Ví dụ

<html> <body> <script> var target = { a: "ram", b: "rahim" }; var source = { b: "akbar", d: "anthony" }; var returnedTarget = {...target, ...source}; document.write(JSON.stringify(returnedTarget)); </script> </body> </html>

Kết quả

{"a":"ram","b":"akbar","d":"anthony"}