JavaScript | Método Object.getOwnPropertyDescriptor()

El método Object.getOwnPropertyDescriptor() en JavaScript es un objeto integrado estándar que devuelve un descriptor de propiedad para una propiedad propia de un objeto determinado.
Sintaxis: 
 

Object.getOwnPropertyDescriptor( obj, prop )

Parámetros: Este método acepta dos parámetros como se mencionó anteriormente y se describe a continuación: 
 

  • obj: este parámetro contiene el objeto en el que se buscará la propiedad.
  • prop: este parámetro contiene el nombre o símbolo de la propiedad cuya descripción se desea recuperar.

Valor devuelto: este método devuelve un descriptor de propiedad de la propiedad dada o indefinido dependiendo de la existencia del objeto.
Los siguientes ejemplos ilustran el método Object.getOwnPropertyDescriptor() en JavaScript:
Ejemplo 1: 
 

javascript

const geeks1 = { 
  prop1: "GeeksforGeeks" 
} 
const geeks2 = { 
  prop2: "Best Platform" 
} 
const geeks3 = { 
  prop3: "And Computer science portal" 
}
const descriptor1 = Object.getOwnPropertyDescriptor(geeks1, 'prop1'); 
const descriptor2 = Object.getOwnPropertyDescriptor(geeks2, 'prop2'); 
const descriptor3 = Object.getOwnPropertyDescriptor(geeks3, 'prop3'); 
console.log(descriptor1.enumerable); 
console.log(descriptor2.enumerable); 
console.log(descriptor1.value); 
console.log(descriptor2.value); 
console.log(descriptor3.enumerable); 
console.log(descriptor3.value); 

Producción: 
 

true
true
"GeeksforGeeks"
"Best Platform"
true
"And Computer science portal"

Ejemplo 2: 
 

javascript

var geek, result;
geek = { get foo() { return 17; } };
d = Object.getOwnPropertyDescriptor(geek, 'foo');
console.log(d)
 
geek = { bar: 42 };
d = Object.getOwnPropertyDescriptor(geek, 'bar');
console.log(d)
 
geek = { [Symbol.for('baz')]: 73 }
d = Object.getOwnPropertyDescriptor(geek, Symbol.for('baz'));
console.log(d)
 
geek = {};
Object.defineProperty(geek, 'qux', {
  value: 8675309,
  writable: false,
  enumerable: false
});
d = Object.getOwnPropertyDescriptor(geek, 'qux');
console.log(d)

Producción: 
 

Object { get: get foo() { return 17; }, set: undefined, enumerable: true, configurable: true }
Object { value: 42, writable: true, enumerable: true, configurable: true }
Object { value: 73, writable: true, enumerable: true, configurable: true }
Object { value: 8675309, writable: false, enumerable: false, configurable: false }

Navegadores compatibles: los navegadores compatibles con el método Object.getOwnPropertyDescriptor() se enumeran a continuación: 
 

  • Google Chrome 5.0 y superior
  • Internet Explorer 9.0 y superior
  • Mozilla 4.0 y superior
  • Ópera 12 y superior
  • Safari 5.0 y superior

Publicación traducida automáticamente

Artículo escrito por SHUBHAMSINGH10 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *