Define un getter:
se une a un propiedad de objeto a una función que se llamará cuando que la propiedad se busca.
Lea sobre Getters and Setters.
Esta función es llamada cuando se accede a la propiedad:
var sth = obj.currentState
en cuenta que no es una llamada de función (no hay ()
), sino una propiedad de acceso normal.
A correspondiente setter se vería así:
set currentState(value) {
// do something with value
// value would be 42 in the next example
}
y sería llamado cuando se asigna un valor a la propiedad, por ejemplo,
obj.currentState = 42;
El get
y set
Palabras clave a los operadores especiales para ser utilizados dentro de la notación literal de objetos. También es posible usar __defineGetter__
y __defineSetter__
:
Parser.prototype.__defineGetter__('currentStatus', function() {
return this.state[this.state.length - 1];
});
No estoy seguro de qué versión se introdujo sin embargo, podría no ser compatible con todos los navegadores (especialmente IE;)).
Se introdujo en ECMAScript 5, e IE9 fue el primer navegador con un motor funcional ES5. – user123444555621