Accès à une propriété : déclencheur
Bonjour à tous,
Je suis en train de développer une petite bibliothèque de gestion de données en Javascript.
Je me retrouve comme ceci :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
|
var dataService = {
customer : function() {
this.m_id = 0;
this.m_first_name = "";
this.m_last_name = "";
this.m_vehicle_id = "";
},
vehicle : function() {
this.m_id = 0;
this.m_brand = "";
this.m_model = "";
},
m_vehicles : [],
m_customers : []
} |
Ce que j'aimerais, c'est faire une fonction dans la class "customer" permettant d'aller chercher son véhicule, mais aussi de conserver son association afin de ne pas effectuer de nouveau la recherche :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
|
customer : function() {
...
this.m_vehicle = null;
this.getVehicle() = function() {
if(this.m_vehicle == null)
for(var i in dataService.m_vehicles)
if(dataService.m_vehicles[i].m_id == this.m_vehicle_id) {
this.m_vehicle = dataService.m_vechiles[i];
break;
}
return this.m_vehicle;
}
} |
(je ne suis pas sûr de la syntaxe, mais pour le moment ça n'est pas important)
Ensuite, ce que j'aimerais, c'est pouvoir utiliser ces données via des "property path", par exemple "Customer.m_vehicle.m_brand".
Mais est-il possible de faire en sorte que lorsque l'on appelle la propriété "m_vehicle", ça redirige vers la fonction "getVehicle()" qui effectura l'association automatiquement avant de renvoyer le véhicule trouvé ?
Merci à vous,
A bientôt