The Object.assign() metodas naudojamas nukopijuoti reikšmes ir savybes iš vieno ar daugiau šaltinio objektų į tikslinį objektą. Jis iškviečia geterius ir nustatytojus, nes naudoja ir [[Get]] šaltinyje ir [[Nustatyti]] taikinyje.
Sintaksė:
Object.assign(target, ...sources);>
Parametrai:
- taikinys : Tai tikslinis objektas, į kurį turi būti nukopijuotos reikšmės ir savybės.
- šaltiniai : Tai yra šaltinio objektas, iš kurio reikia nukopijuoti reikšmes ir savybes.
Grąžinimo vertė:
Object.assign() grąžina tikslinį objektą.
1 pavyzdys: Šiame pavyzdyje objekto obj1 savybės, ty { a: 10 }, nukopijuojamos į tikslinį objektą 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);> |
nulinio taško išimtis
>
>
Išvestis:
Object { a: 1 }> 2 pavyzdys: Šiame pavyzdyje trijų šaltinio objektų obj1, obj2, obj3 savybės nukopijuojamos į tikslinį objektą new_obj. Bus perrašyta bet kurios iš anksto esamos rakto-reikšmių poros, buvusios ankstesniame objekte, reikšmė. Pavyzdžiui, obj1.b, kurio vertė yra 10, dabar bus perrašyta obj2.b, kurios reikšmė yra 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);> |
>
>
blokuoti youtube skelbimus android
Išvestis:
Object { a: 10, b: 20, c: 30 }> 3 pavyzdys: Šiame pavyzdyje trijų šaltinio objektų obj1, obj2, obj3 savybės nukopijuojamos į tikslinį objektą new_obj ir tikslinis objektas gauna perrašytas reikšmes.
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);> |
>
>
sistemos programinė įranga
Išvestis:
Object { a: 10, b: 20, c: 30 }> Paaiškinimas:
Aukščiau pateiktame kode ypatybes perrašo kiti objektai, turintys tas pačias savybes vėliau ta pačia parametrų tvarka.
Programos:
- Object.assign() naudojamas objekto klonavimui, tų pačių savybių objektams sujungti.
Klaidos ir išimtys :
- Tipo klaida iškeliama, jei ypatybė neįrašoma.
- Tikslinis objektas gali būti pakeistas tik tuo atveju, jei savybės yra įtrauktos prieš iškeliant klaidą.
- Object.assign() nepateikia nulinių arba neapibrėžtų šaltinio verčių
Turime visą JavaScript objektų metodų sąrašą. Norėdami juos patikrinti, atlikite tai „JavaScript“ objekto visa nuoroda straipsnis.
Palaikomos naršyklės:
- Google Chrome 6.0 ir naujesnės versijos
- Internet Explorer 9.0 ir naujesnės versijos
- „Mozilla 4.0“ ir naujesnės versijos
- Opera 11.1 ir naujesnės versijos
- „Safari 5.0“ ir naujesnės versijos