Thêm giá trị vào đối tượng javascript

Phương thức

const obj = { a: 1 };
const copy = Object.assign({}, obj);
console.log(copy); // { a: 1 }
0 sao chép tất cả các thuộc tính riêng có thể đếm được từ một hoặc nhiều đối tượng nguồn sang đối tượng đích. Nó trả về đối tượng mục tiêu đã sửa đổi

Thử nó

cú pháp

Object.assign(target, ...sources)

Thông số

const obj = { a: 1 };
const copy = Object.assign({}, obj);
console.log(copy); // { a: 1 }
1

Đối tượng đích — cái gì để áp dụng các thuộc tính của nguồn, được trả về sau khi nó được sửa đổi

const obj = { a: 1 };
const copy = Object.assign({}, obj);
console.log(copy); // { a: 1 }
2

(Các) đối tượng nguồn — các đối tượng chứa các thuộc tính bạn muốn áp dụng

Giá trị trả về

đối tượng mục tiêu

Sự mô tả

Các thuộc tính trong đối tượng đích được ghi đè bởi các thuộc tính trong nguồn nếu chúng có cùng khóa. Các thuộc tính của nguồn sau ghi đè lên các thuộc tính trước đó

Phương thức

const obj = { a: 1 };
const copy = Object.assign({}, obj);
console.log(copy); // { a: 1 }
0 chỉ sao chép các thuộc tính có thể đếm được và thuộc tính riêng từ đối tượng nguồn sang đối tượng đích. Nó sử dụng
const obj = { a: 1 };
const copy = Object.assign({}, obj);
console.log(copy); // { a: 1 }
4 trên nguồn và
const obj = { a: 1 };
const copy = Object.assign({}, obj);
console.log(copy); // { a: 1 }
5 trên đích, vì vậy nó sẽ gọi getters và setters. Do đó, nó gán thuộc tính, so với sao chép hoặc xác định thuộc tính mới. Điều này có thể làm cho nó không phù hợp để hợp nhất các thuộc tính mới thành một nguyên mẫu nếu các nguồn hợp nhất chứa getters

Để sao chép các định nghĩa thuộc tính (bao gồm cả số lượng của chúng) vào các nguyên mẫu, thay vào đó hãy sử dụng

const obj = { a: 1 };
const copy = Object.assign({}, obj);
console.log(copy); // { a: 1 }
6 và
const obj = { a: 1 };
const copy = Object.assign({}, obj);
console.log(copy); // { a: 1 }
7

Cả hai thuộc tính

const obj = { a: 1 };
const copy = Object.assign({}, obj);
console.log(copy); // { a: 1 }
8 và
const obj = { a: 1 };
const copy = Object.assign({}, obj);
console.log(copy); // { a: 1 }
9 đều được sao chép

Trong trường hợp có lỗi, ví dụ: nếu một thuộc tính không thể ghi, thì một

Object.assign(target, ...sources)
10 sẽ được hiển thị và đối tượng
const obj = { a: 1 };
const copy = Object.assign({}, obj);
console.log(copy); // { a: 1 }
1 sẽ bị thay đổi nếu bất kỳ thuộc tính nào được thêm vào trước khi lỗi được hiển thị

Ghi chú.

const obj = { a: 1 };
const copy = Object.assign({}, obj);
console.log(copy); // { a: 1 }
0 không ném vào nguồn
Object.assign(target, ...sources)
13 hoặc
Object.assign(target, ...sources)
14

ví dụ

Nhân bản một đối tượng

const obj = { a: 1 };
const copy = Object.assign({}, obj);
console.log(copy); // { a: 1 }

Cảnh báo Deep Clone

Để sao chép sâu, chúng ta cần sử dụng các lựa chọn thay thế, vì

const obj = { a: 1 };
const copy = Object.assign({}, obj);
console.log(copy); // { a: 1 }
0 bản sao các giá trị thuộc tính

Nếu giá trị nguồn là tham chiếu đến một đối tượng, nó chỉ sao chép giá trị tham chiếu

Object.assign(target, ...sources)
1

Hợp nhất các đối tượng

Object.assign(target, ...sources)
9

Hợp nhất các đối tượng có cùng thuộc tính

const obj = { a: 1 };
const copy = Object.assign({}, obj);
console.log(copy); // { a: 1 }
0

Các thuộc tính được ghi đè bởi các đối tượng khác có cùng thuộc tính sau theo thứ tự tham số

Tôi có thể thêm biến vào đối tượng trong JavaScript không?

Chúng ta có thể thêm thuộc tính vào đối tượng JavaScript bằng cách sử dụng biến làm tên bằng cách sử dụng ký hiệu dấu chấm hoặc ký hiệu dấu ngoặc .

Bạn có thể thêm một mảng vào một đối tượng JavaScript không?

Trong JavaScript, bạn có thể thêm các mục vào một mảng theo một số cách, chẳng hạn như khởi tạo mảng bằng một mục, đẩy một mục vào mảng, kết hợp các mảng, v.v.< . Ở đây chúng ta sẽ xem cách bạn có thể đẩy một đối tượng JavaScript vào một mảng. Để đạt được điều này, chúng ta sẽ sử dụng phương pháp đẩy. . Here we'll see how you can push a JavaScript object into an array. To achieve this, we'll use the push method.