„JavaScript“ standartiniai objektai: paaiškinti, priskirti, reikšmes, hasOwnProperty ir getOwnPropertyNames metodus
„JavaScript“ Object
duomenų tipas naudojamas raktų reikšmių poroms saugoti, ir, kaip ir Array
duomenų tipui, yra daug naudingų metodų. Tai yra keli naudingi metodai, kuriuos naudosite dirbdami su objektais.
Objekto priskyrimo metodas
Object.assign()
Metodas yra naudojamas
- pridėti ypatybes ir vertes į esamą objektą
- - padaryti naują esamo objekto kopiją arba
- sujungti kelis esamus objektus į vieną objektą.
Object.assign()
Metodas reikalauja vieną targetObject
kaip parametras ir gali priimti neribotą skaičių sourceObjects
, kaip papildomus parametrus.
Svarbu pažymėti, kad targetObject
parametras visada bus modifikuotas. Jei tas parametras rodo į esamą objektą, tas objektas bus ir modifikuotas, ir nukopijuotas.
Jei norite sukurti objekto kopiją nekeisdami to pirminio objekto, tuščią objektą galite perduoti {}
kaip pirmąjį targetObject
parametrą ( ), o objektą, kurį norite nukopijuoti, kaip antrąjį sourceObject
parametrą ( ).
Jei objektai, perduodami kaip parametrai, Object.assign()
turi tas pačias ypatybes (arba raktus), vėliau parametrų sąraše pateikiamos ypatybių reikšmės perrašys anksčiau gautas.
Sintaksė
Object.assign(targetObject, ...sourceObject);
Grąžinimo vertė
Object.assign()
grąžina targetObject
.
Pavyzdžiai
Keitimas ir kopijavimas 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 }
Kopijavimas targetObject
be pakeitimų:
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 }
Objektai su tomis pačiomis savybėmis :
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 }
Objekto vertybių metodas
Object.values()
Metodas atsižvelgia objektą kaip parametras ir grąžina jos vertybių masyvo. Tai daro jį naudingą grandinėms naudojant įprastus Array
metodus, pvz .map()
. .forEach()
, Ir .reduce()
.
Sintaksė
Object.values(targetObject);
Grąžinimo vertė
Perduoto objekto ( targetObject
) reikšmių masyvas .
Pavyzdžiai
const obj = { firstName: 'Quincy', lastName: 'Larson' } const values = Object.values(obj); console.log(values); // ["Quincy", "Larson"]
Jei jūsų perduotame objekte raktai yra skaičiai, tada Object.value()
grąžinamos reikšmės pagal raktų skaičių eilę:
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"]
Jei kažkas, išskyrus objektą, yra perduodamas Object.values()
, jis bus priverstas į objektą prieš grąžinant jį kaip masyvą:
const str = 'hello'; console.log(Object.values(str)); // ["h", "e", "l", "l", "o"]
Objektas hasOwnProperty metodas
Į Object.hasOwnProperty()
metodas grąžina boolean nurodant jei objektas priklauso Nurodytas turtą.
This is a convenient method to check if an object has the specified property or not since it returns true/false accordingly.
Syntax
Object.hasOwnProperty(prop)
Return value
true // or false
Examples
Using Object.hasOwnProperty()
to test if a property exist or not in a given object:
const course = { name: 'freeCodeCamp', 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
Object getOwnPropertyNames Method
The Object.getOwnPropertyNames()
method takes an object as a parameter and returns and array of all its properties.
Syntax
Object.getOwnPropertyNames(obj)
Return value
An array of strings of the passed object's properties.
Examples
const obj = { firstName: 'Quincy', lastName: 'Larson' } console.log(Object.getOwnPropertyNames(obj)); // ["firstName", "lastName"]
If something other than an object is passed to Object.getOwnPropertyNames()
, it will be coerced into an object before being returned as an array:
const arr = ['1', '2', '3']; console.log(Object.getOwnPropertyNames(arr)); // ["0", "1", "2", "length"]
Promise.prototype.then
A Promise.prototype.then
function accepts two arguments and returns a Promise.
The first argument is a required function that accepts one argument. Successful fulfillment of a Promise will trigger this function.
Antrasis argumentas yra neprivaloma funkcija, kuri taip pat priima vieną savo argumentą. Išmesta klaida arba pažado atmetimas suaktyvins šią funkciją.
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
leidžia atlikti daugybę asinchroninių veiklų iš eilės. Tai darote pridėdami vieną then
funkciją prie kitos, atskirtą taško operatoriumi.
promiseReturningFunction(paramList) .then( // first then function function(arg1) { // ... return someValue; } ) ... .then( // nth then function function(arg2) { // ... return otherValue; } )
Žemėlapio prototipas. Įrašai
Pateikia naują Iterator
objektą, kuriame yra [key, value]
kiekvieno Map
objekto elemento poros įterpimo tvarka.
Sintaksė
myMap.entries()
Pavyzdys
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]
Daugiau informacijos apie „JavaScript“ esančius objektus:
- Kaip sukurti objektus „JavaScript“
- Kaip apžvelgti „JavaScript“ objektus
Daugiau informacijos apie booleans:
- „Booleans“ „JavaScript“