The Metóda Object.assign(). sa používa na kopírovanie hodnôt a vlastností z jedného alebo viacerých zdrojových objektov do cieľového objektu. Vyvoláva získavače a nastavovače, pretože používa [[Get]] na zdroji aj [[Set]] na cieli.
Syntax:
Object.assign(target, ...sources);>
Parametre:
- cieľ : Je to cieľový objekt, do ktorého sa musia skopírovať hodnoty a vlastnosti.
- zdrojov : Je to zdrojový objekt, z ktorého sa musia skopírovať hodnoty a vlastnosti.
Návratová hodnota:
Object.assign() vráti cieľový objekt.
Príklad 1: V tomto príklade sa vlastnosti objektu obj1 t.j. { a: 10 } skopírujú do cieľového objektu 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);> |
mapový java iterátor
>
>
Výkon:
Object { a: 1 }> Príklad 2: V tomto príklade sa vlastnosti troch zdrojových objektov obj1, obj2, obj3 skopírujú do cieľového objektu new_obj. Hodnota akéhokoľvek už existujúceho páru kľúč – hodnota, ktorý existoval v predchádzajúcom objekte, bude prepísaná. Napríklad obj1.b, ktorý má hodnotu 10, bude teraz prepísaný obj2.b, ktorý má hodnotu 20
zoradiť zoznam polí v jazyku Java
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);> |
>
>
Výkon :
Object { a: 10, b: 20, c: 30 }> Príklad 3: V tomto príklade sa vlastnosti troch zdrojových objektov obj1, obj2, obj3 skopírujú do cieľového objektu new_obj a cieľový objekt získa prepísané hodnoty.
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);> |
>
>
Výkon:
ako sa vymaniť zo slučky while java
Object { a: 10, b: 20, c: 30 }> Vysvetlenie:
Vo vyššie uvedenom kóde sú vlastnosti prepísané inými objektmi, ktoré majú rovnaké vlastnosti neskôr v rovnakom poradí parametrov.
Aplikácie:
- Object.assign() sa používa na klonovanie objektu, na zlúčenie objektov s rovnakými vlastnosťami.
Chyby a výnimky :
- Ak vlastnosť nie je zapisovateľná, zobrazí sa chyba TypeError.
- Cieľový objekt je možné zmeniť iba vtedy, ak sú vlastnosti pridané pred vyvolaním chyby.
- Object.assign() nevyvoláva nulové alebo nedefinované zdrojové hodnoty
Máme kompletný zoznam metód objektov JavaScript, aby ste ich skontrolovali, prejdite si toto Úplná referencia objektu JavaScript článok.
Podporované prehliadače:
- Google Chrome 6.0 a novší
- Internet Explorer 9.0 a novší
- Mozilla 4.0 a vyššie
- Opera 11.1 a vyššie
- Safari 5.0 a vyššie