237 of 264 menu

Μέθοδος Object.assign

Η μέθοδος Object.assign αντιγράφει ιδιότητες και τιμές του πηγαίου αντικειμένου, επιστρέφοντας ένα νέο αντικείμενο. Στην πρώτη παράμετρο της μεθόδου ορίζουμε το αντικείμενο στόχο, στο οποίο αντιγράφουμε, και στο δεύτερο - καθορίζουμε τα αντικείμενα που πρέπει να αντιγραφούν.

Σύνταξη

Object.assign(πού να αντιγραφεί, αντικείμενα);

Παράδειγμα

Ας πάρουμε ένα νέο αντικείμενο από το πηγαίο:

let obj = {'a': 1, 'b': 2, 'c': 3}; let newObj = Object.assign({}, obj); console.log(newObj);

Αποτέλεσμα εκτέλεσης κώδικα:

{a: 1, b: 2, c: 3}

Παράδειγμα

Τώρα ας πάρουμε ένα νέο αντικείμενο από πολλά πηγαία, απαριθμώντας τα στην παράμετρο χωρισμένα με κόμμα:

let obj1 = {'a': 1, 'b': 2}; let obj2 = {'c': 3, 'd': 4}; let newObj = Object.assign({}, obj1, obj2); console.log(newObj);

Μετά την εκτέλεση του κώδικα θα δούμε ότι τα δύο πηγαία αντικείμενα συγχωνεύτηκαν σε ένα νέο αντικείμενο:

{a: 1, b: 2, c: 3, d: 4}

Παράδειγμα

Επίσης, η μέθοδος Object.assign μπορεί να εφαρμοστεί για τη λήψη ενός νέου πίνακα, καθώς ο πίνακας κατά τύπο ανήκει επίσης σε αντικείμενα. Ας φτιάξουμε έναν νέο πίνακα, αντιγράφοντας στοιχεία από τον πηγαίο:

let arr = [1, 2, 3, 4]; let newArr = Object.assign([], arr); console.log(newArr);

Αποτέλεσμα εκτέλεσης κώδικα:

[1, 2, 3, 4]

Παράδειγμα

Όταν χρησιμοποιείται η μέθοδος Object.assign πρέπει να προσέχουμε προσεκτικά τη σύνταξη. Για παράδειγμα, εάν δεν προσθέσουμε στην πρώτη παράμετρο το αντικείμενο στόχο, αλλά αφήσουμε μόνο το αντικείμενο προς αντιγραφή, τότε αυτό θα επιστραφεί:

let obj = {1:'a', 2: 'b', 3: 'c'}; let newObj = Object.assign(obj); console.log(newObj === obj);

Αποτέλεσμα εκτέλεσης κώδικα:

true

Δείτε επίσης

  • μέθοδος Object.keys,
    που επιστρέφει έναν πίνακα από ιδιότητες του αντικειμένου
  • μέθοδος Object.values,
    που επιστρέφει έναν πίνακα από τιμές του αντικειμένου
Ελληνικά
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Χρησιμοποιούμε cookie για τη λειτουργία του ιστότοπου, την ανάλυση και την εξατομίκευση. Η επεξεργασία των δεδομένων γίνεται σύμφωνα με την Πολιτική Απορρήτου.
αποδοχή όλων ρύθμιση απόρριψη