The Метод Object.assign(). використовується для копіювання значень і властивостей з одного або кількох вихідних об’єктів до цільового об’єкта. Він викликає геттери та сетери, оскільки використовує як [[Get]] у джерелі, так і [[Set]] у цілі.
Синтаксис:
Object.assign(target, ...sources);>
Параметри:
- мета : це цільовий об’єкт, до якого необхідно скопіювати значення та властивості.
- джерела : це вихідний об’єкт, з якого потрібно скопіювати значення та властивості.
Повернене значення:
Object.assign() повертає цільовий об'єкт.
Приклад 1: У цьому прикладі властивості об’єкта obj1, тобто { a: 10 }, копіюються в цільовий об’єкт new_obj.
Javascript
// creating an object constructor> // and assigning values to it> const obj1 = { a: 1 };> // creating a target object and copying values and> // properties to it using object.assign() method> // Here, obj1 is the source object> const new_obj = Object.assign({}, obj1);> // Displaying the target object> console.log(new_obj);> |
абстрактний клас java
>
>
Вихід:
Object { a: 1 }> приклад 2: У цьому прикладі властивості трьох вихідних об’єктів obj1, obj2, obj3 копіюються в цільовий об’єкт new_obj. Значення будь-якої попередньої пари ключ-значення, яка існувала в попередньому об’єкті, буде перезаписано. Наприклад, obj1.b зі значенням 10 тепер буде перезаписано obj2.b зі значенням 20
Javascript
// creating 3 object constructors and assigning values to it> let obj1 = { a: 10 };> let obj2 = { b: 20 };> let obj3 = { c: 30 };> // Creating a target object and copying values> // and properties to it using object.assign() method> let new_obj = Object.assign({}, obj1, obj2, obj3);> // Displaying the target object> console.log(new_obj);> |
>
що таке структура в структурі даних
>
Вихід:
Object { a: 10, b: 20, c: 30 }> приклад 3: У цьому прикладі властивості трьох вихідних об’єктів obj1, obj2, obj3 копіюються в цільовий об’єкт new_obj, а цільовий об’єкт отримує перезаписані значення.
Javascript
Мадхурі сказав
// Creating 3 object constructors and assigning values to it> let obj1 = { a: 10, b: 10, c: 10 };> let obj2 = { b: 20, c: 20 };> let obj3 = { c: 30 };> // Creating a target object and copying values and> // properties to it using object.assign() method> let new_obj = Object.assign({}, obj1, obj2, obj3);> // Displaying the target object> console.log(new_obj);> |
>
>
Вихід:
Object { a: 10, b: 20, c: 30 }> Пояснення:
У наведеному вище коді властивості перезаписуються іншими об’єктами, які мають такі самі властивості пізніше в тому ж порядку параметрів.
Застосування:
- Object.assign() використовується для клонування об’єкта, щоб об’єднати об’єкти з однаковими властивостями.
Помилки та винятки :
- Помилка TypeError виникає, якщо властивість не доступна для запису.
- Цільовий об’єкт можна змінити, лише якщо властивості додано до появи помилки.
- Object.assign() не використовує нульові або невизначені вихідні значення
У нас є повний список методів JavaScript Object, щоб перевірити їх, будь ласка, перегляньте це Повний довідник об’єктів JavaScript стаття.
Підтримувані браузери:
- Google Chrome 6.0 і вище
- Internet Explorer 9.0 і вище
- Mozilla 4.0 і вище
- Opera 11.1 і вище
- Safari 5.0 і вище