În JavaScript, fișierul Object tipul de date este utilizat pentru a stoca perechi de valori cheie, precum și ca Array tip de date, conțin multe metode utile. Acestea sunt câteva metode utile pe care le veți folosi în timp ce lucrați cu obiecte.

Metoda de atribuire a obiectelor

Object.assign() metoda este folosită pentru

  1. adăugați proprietăți și valori unui obiect existent
  2. faceți o copie nouă a unui obiect existent sau
  3. combinați mai multe obiecte existente într-un singur obiect.

Object.assign() metoda necesită una targetObject ca parametru și poate accepta un număr nelimitat de sourceObjects ca parametri suplimentari.

Este important de remarcat aici că targetObject parametrul va fi întotdeauna modificat. Dacă parametrul respectiv indică un obiect existent, atunci acel obiect va fi modificat și copiat.

Dacă doriți să creați o copie a unui obiect fără a modifica acel obiect original, puteți trece un obiect gol {} ca primul (targetObject) parametru și obiectul care trebuie copiat ca al doilea (sourceObject) parametru.

Dacă obiectele au trecut ca parametri în Object.assign() partajează aceleași proprietăți (sau chei), valorile proprietăților care apar mai târziu în lista de parametri le vor suprascrie pe cele care au apărut mai devreme.

Sintaxă

Object.assign(targetObject, ...sourceObject);

Valoare returnată

Object.assign() returnează targetObject.

Exemple

Modificarea și copierea targetObject:

let obj = {name: 'Dave', age: 30};

let objCopy = Object.assign(obj, {coder: true});

console.log(obj); // { name: 'Dave', age: 30, coder: true }
console.log(objCopy); // { name: 'Dave', age: 30, coder: true }

Copiere targetObject fără modificări:

let obj = {name: 'Dave', age: 30};

let objCopy = Object.assign({}, obj, {coder: true});

console.log(obj); // { name: 'Dave', age: 30 }
console.log(objCopy); // { name: 'Dave', age: 30, coder: true }

Obiecte cu aceleași proprietăți:

let obj = {name: 'Dave', age: 30, favoriteColor: 'blue'};

let objCopy = Object.assign({}, obj, {coder: true, favoriteColor: 'red'});

console.log(obj); // { name: 'Dave', age: 30, favoriteColor: 'blue' }
console.log(objCopy); // { name: 'Dave', age: 30, favoriteColor: 'red', coder: true }

Metoda valorilor obiectelor

Object.values() metoda ia un obiect ca parametru și returnează o serie de valori ale acestuia. Acest lucru îl face util pentru înlănțuirea cu comun Array metode precum .map(), .forEach(), și .reduce().

Sintaxă

Object.values(targetObject);

Valoare returnată

O matrice a obiectului trecut (targetObject) valori.

Exemple

const obj = { 
  firstName: 'Quincy',
  lastName: 'Larson' 
}

const values = Object.values(obj);

console.log(values); // ["Quincy", "Larson"]

Dacă obiectul pe care îl treci are numere ca taste, atunci Object.value() va returna valorile conform ordinii numerice a tastelor:

const obj1 = { 0: 'first', 1: 'second', 2: 'third' };
const obj2 = { 100: 'apple', 12: 'banana', 29: 'pear' };

console.log(Object.values(obj1)); // ["first", "second", "third"]
console.log(Object.values(obj2)); // ["banana", "pear", "apple"]

Dacă se transmite altceva decât un obiect Object.values(), va fi constrâns într-un obiect înainte de a fi returnat ca matrice:

const str="hello";

console.log(Object.values(str)); // ["h", "e", "l", "l", "o"]

Obiectul hasOwnProperty Method

Object.hasOwnProperty() returnează o metodă booleană care indică dacă obiectul deține proprietatea specificată.

Aceasta este o metodă convenabilă pentru a verifica dacă un obiect are sau nu proprietatea specificată, deoarece returnează adevărat / fals în consecință.

Sintaxă

Object.hasOwnProperty(prop)

Valoare returnată

true
// or
false

Exemple

Folosind Object.hasOwnProperty() pentru a testa dacă există sau nu o proprietate într-un obiect dat:

const course = {
  name: 'Routech',
  feature: 'is awesome',
}

const student = {
  name: 'enthusiastic student',
}

course.hasOwnProperty('name');  // returns true
course.hasOwnProperty('feature');   // returns true

student.hasOwnProperty('name');  // returns true
student.hasOwnProperty('feature'); // returns false

Obiect Metoda getOwnPropertyNames

Object.getOwnPropertyNames() metoda ia un obiect ca parametru și returnează și matricea tuturor proprietăților sale.

Sintaxă

Object.getOwnPropertyNames(obj)

Valoare returnată

O serie de șiruri de proprietăți ale obiectului trecut.

Exemple

const obj = { firstName: 'Quincy', lastName: 'Larson' }

console.log(Object.getOwnPropertyNames(obj)); // ["firstName", "lastName"]

Dacă se transmite altceva decât un obiect Object.getOwnPropertyNames(), va fi constrâns într-un obiect înainte de a fi returnat ca matrice:

const arr = ['1', '2', '3'];

console.log(Object.getOwnPropertyNames(arr)); // ["0", "1", "2", "length"]

Promitere.prototip.atunci

A Promise.prototype.then funcția acceptă două argumente și returnează o promisiune.

Primul argument este o funcție necesară care acceptă un argument. Îndeplinirea cu succes a unei promisiuni va declanșa această funcție.

Al doilea argument este o funcție opțională care acceptă, de asemenea, un argument propriu. O eroare aruncată sau respingerea unei promisiuni va declanșa această funcție.

   function onResolved (resolvedValue) {
     /*
     * access to resolved values of promise
     */
   }
 
  function onRejected(rejectedReason) {
     /*
     * access to rejection reasons of promise
     */
   }

  promiseReturningFunction(paramList)
     .then( // then function
       onResolved,
       [onRejected]
     );

Promise.prototype.then vă permite să efectuați multe activități asincrone în ordine. Faceți acest lucru atașând unul then funcționează la altul separat de un operator punct.

   promiseReturningFunction(paramList)
   .then( // first then function
     function(arg1) {
       // ...
       return someValue;
     }
   )
   ...
   .then( // nth then function
     function(arg2) {
       // ...
       return otherValue;
     }
   )

Hartă.prototip.intrări

Returnează un nou Iterator obiect care conține [key, value] perechi pentru fiecare element din Map obiect în ordine de inserare.

Sintaxă

myMap.entries()

Exemplu

const myMap = new Map();
myMap.set('foo',1);
myMap.set('bar',2);
myMap.set('baz',3);


var iterator = myMap.entries();

console.log(iterator.next().value); // ['foo', 1]
console.log(iterator.next().value); // ['bar', 2]
console.log(iterator.next().value); // ['baz', 3]

Mai multe informații despre obiecte în JavaScript:

  • Cum se creează obiecte în JavaScript
  • Cum să parcurgeți obiectele din JavaScript

Mai multe informații despre booleeni:

  • Booleeni în JavaScript