Object.prototype.__defineGetter__()

Advertencia: 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

js
// 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

Specification
ECMAScript Language Specification
# sec-object.prototype.__defineGetter__

Compatibilidad con navegadores

BCD tables only load in the browser

Mira también