Este articulo necesita una revisión editorial. Cómo puedes ayudar.
Esta traducción está incompleta. Por favor, ayuda a traducir este artículo del inglés.
Esta característica está obsoleta en favor de definir getters usando el object initializer syntax o la API Object.defineProperty()
.
En todo caso, como es ampliamente implementada y usada en la Web, es poco probable que los navegadores dejen de implementarla.
El método __defineGetter__
enlaza una propiedad de un objeto a una función a ser llamada cuando esa propiedad es buscada.
Sintaxis
obj.__defineGetter__(prop, func)
Parámetros
prop
- Un texto (string) que contiene el nombre de la propiedad para enlazar la función dada.
func
- A function to be bound to a lookup of the specified property.
Descripción
The __defineGetter__
allows a getter to be defined on a pre-existing object.
Ejemplos
// Forma no-estándar y obsoleta var o = {}; o.__defineGetter__('gimmeFive', function() { return 5; }); console.log(o.gimmeFive); // 5 // Formas compatibles con el estándar // Usando el operador get var o = { get gimmeFive() { return 5; } }; console.log(o.gimmeFive); // 5 // Usando Object.defineProperty var o = {}; Object.defineProperty(o, 'gimmeFive', { get: function() { return 5; } }); console.log(o.gimmeFive); // 5
Especificaciones
Especificación | Estado | Comentario |
---|---|---|
JavaScript, a.k.a. Web ECMAScript The definition of 'Object.prototype.__defineGetter__()' in that specification. |
Living Standard |
Compatibilidad de navegadores
Característica | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
Basic support | (Yes) | (Yes) | 11 | (Yes) | (Yes) |
Característica | Android | Chrome para Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Basic support | (Yes) | (Yes) | (Yes) | ? | (Yes) | (Yes) |