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