2012-02-06 15 views
14

El método Object.defineProperty (ver here) acepta como tercer argumento un "descriptor".¿Qué es un descriptor?

¿Qué es un descriptor?

+5

Está justo allí bajo la "Descripción" de cabecera: "Un descriptor de propiedad es .. . ". – pimvdb

+1

El enlace que proporcionó parece proporcionar una definición bastante buena en la parte que dice 'Un descriptor de propiedad es un objeto con los siguientes campos:' –

+0

Voto por esta pregunta y la respuesta aceptada es mucho más fácil de seguir que la complicada explicación sobre MDN – kapreski

Respuesta

28

A El descriptor de propiedad puede ser de dos tipos: descriptor de datos o descriptor de acceso.

descriptor de datos

propiedades obligatorias:

  • value

propiedades opcionales:

  • configurable
  • enumerable
  • writable

de ejemplo:

{ 
    value: 5, 
    writable: true 
} 

descriptor Accessor

propiedades obligatorias:

  • De cualquier get o set o ambos

propiedades opcionales:

  • configurable
  • enumerable

muestra:

{ 
    get: function() { 
     return 5; 
    }, 
    enumerable: true 
} 
3

Un descriptor es algo que describe algo. En este caso, es solo un objeto simple ({...}) con ciertos campos, que describe cómo debe comportarse la propiedad. Lea más abajo en la página para ver qué campos puede usar.

Cuestiones relacionadas