Maison >interface Web >js tutoriel >Exemple de méthodes d'objet JavaScript

Exemple de méthodes d'objet JavaScript

Susan Sarandon
Susan Sarandonoriginal
2024-11-05 13:26:02266parcourir

JavaScript Object Methods Example

Exemple de méthodes d'objet JavaScript.

  • Object.keys(obj) : Renvoie un tableau des propres noms de propriétés énumérables (clés) d'un objet.
const obj = { a: 1, b: 2, c: 3 };
console.log(Object.keys(obj));
// Output: ['a', 'b', 'c']
  • Object.values(obj): Renvoie un tableau des propres valeurs de propriétés énumérables de l'objet.
const obj = { a: 1, b: 2, c: 3 };
console.log(Object.values(obj));
// Output: [1, 2, 3]
  • Object.entries(obj): Renvoie un tableau des propres paires de propriétés à clé de chaîne énumérables [clé, valeur] de l'objet.
const obj = { a: 1, b: 2, c: 3 };
console.log(Object.entries(obj));
// Output: [['a', 1], ['b', 2], ['c', 3]]
  • Object.isSealed(obj): Renvoie vrai si l'objet est scellé, sinon faux.
const obj = Object.seal({ a: 1 });
console.log(Object.isSealed(obj));
// Output: true
  • Object.assign(target, source): Copie les valeurs de toutes les propriétés énumérables d'un ou plusieurs objets source vers un objet cible. Il renvoie l'objet cible.
const target = { a: 1 };
const source = { b: 2, c: 3 };
const result = Object.assign(target, source);
console.log(result);
// Output: { a: 1, b: 2, c: 3 }
  • Object.freeze(obj) : Gèle un objet, empêchant l'ajout de nouvelles propriétés ou la suppression ou la reconfiguration des propriétés existantes.
const obj = { name: 'Khabib' };
Object.freeze(obj);
obj.name = 'Bob'; // This won't change the value
console.log(obj.name); // Output: 'Khabib'
  • Object.seal(obj) : Scelle un objet, empêchant l'ajout de nouvelles propriétés, mais permettant la modification des propriétés existantes.
const obj = { name: 'Alice' };
Object.seal(obj);
obj.name = 'Bob'; // This will update the value
obj.age = 25; // This won't add a new property
console.log(obj); // Output: { name: 'Bob' }
  • Object.create(proto): Crée un nouvel objet avec l'objet prototype et les propriétés spécifiés.
const person = {greet() {console.log('Hello!');}};
const student = Object.create(person);
student.greet();
// Output: 'Hello!'
  • Object.defineProperty(obj, prop, descriptor) : Définit une nouvelle propriété directement sur un objet ou modifie une propriété existante.
const obj = {};
Object.defineProperty(obj, 'name', {
value: 'Alice',
writable: false });
console.log(obj.name); // 'Alice'
  • Object.defineProperties(obj, props) : Définit plusieurs nouvelles propriétés ou modifie les propriétés existantes sur un objet.
const obj = {};
Object.defineProperties(obj, {
name: { value: 'Cormier', writable: false },
age: { value: 30, writable: true } });
console.log(obj.name); // 'Cormier'
  • Object.isExtensible(obj): Détermine si un objet est extensible (c'est-à-dire si de nouvelles propriétés peuvent être ajoutées).
const obj = {};
console.log(Object.isExtensible(obj)); // true
Object.preventExtensions(obj);
console.log(Object.isExtensible(obj)); // false
  • Object.isFrozen(obj): Détermine si un objet est gelé (c'est-à-dire non extensible et toutes les propriétés ne sont pas accessibles en écriture).
const obj = Object.freeze({ name: 'Gregor' });
console.log(Object.isFrozen(obj));
// output: true
  • Object.hasOwn(obj, prop): Renvoie vrai si l'objet spécifié a la propriété spécifiée comme sa propre propriété, même si la valeur de la propriété n'est pas définie.
const obj = { name: 'Alice' };
console.log(Object.hasOwn(obj, 'name')); // true
console.log(Object.hasOwn(obj, 'age')); // false
  • Object.hasOwnProperty(prop): Détermine si un objet contient la propriété spécifiée en tant que propriété directe de cet objet et non héritée via la chaîne de prototypes.
const obj = { name: 'Alice' };
console.log(obj.hasOwnProperty('name')); // true
console.log(obj.hasOwnProperty('age')); // false
  • Object.preventExtensions(obj): Empêche l'ajout de nouvelles propriétés à un objet.
const obj = {};
Object.preventExtensions(obj);
obj.name = 'Khabib'; // Won't be added
console.log(obj); // {}
  • Object.setPrototypeOf(obj, proto): Définit le prototype (la propriété interne [[Prototype]]) d'un objet spécifié.
const proto = { greet() {console.log('Hello!');}};
const obj = {};
Object.setPrototypeOf(obj, proto);
obj.greet(); // 'Hello!'
  • Object.fromEntries(iterable): Transforme une liste de paires clé-valeur en objet.
const obj = { a: 1, b: 2, c: 3 };
console.log(Object.keys(obj));
// Output: ['a', 'b', 'c']
  • Object.getPrototypeOf(obj) : Renvoie le prototype (la propriété interne [[Prototype]]) de l'objet spécifié.
const obj = { a: 1, b: 2, c: 3 };
console.log(Object.values(obj));
// Output: [1, 2, 3]
  • Object.getOwnPropertySymbols(obj): Renvoie un tableau de toutes les propriétés de symbole trouvées sur l'objet.
const obj = { a: 1, b: 2, c: 3 };
console.log(Object.entries(obj));
// Output: [['a', 1], ['b', 2], ['c', 3]]
  • Object.getOwnPropertyDescriptor(obj, prop): Renvoie un descripteur de propriété pour une propriété spécifique d'un objet donné.
const obj = Object.seal({ a: 1 });
console.log(Object.isSealed(obj));
// Output: true
  • Object.getOwnPropertyNames(obj): Renvoie un tableau de toutes les propriétés trouvées sur l'objet (y compris les propriétés non énumérables).
const target = { a: 1 };
const source = { b: 2, c: 3 };
const result = Object.assign(target, source);
console.log(result);
// Output: { a: 1, b: 2, c: 3 }
  • Object.is(value1, value2): Compare si deux valeurs sont identiques.
const obj = { name: 'Khabib' };
Object.freeze(obj);
obj.name = 'Bob'; // This won't change the value
console.log(obj.name); // Output: 'Khabib'
  • Object.getOwnPropertyDescriptors(obj): Renvoie tous les descripteurs de propriété d'un objet.
const obj = { name: 'Alice' };
Object.seal(obj);
obj.name = 'Bob'; // This will update the value
obj.age = 25; // This won't add a new property
console.log(obj); // Output: { name: 'Bob' }

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn