generated setters
JavaScript
var obj = {
a: 1,
b: 2,
c: 3
};
Object.keys(obj).forEach(function(key) {
obj['set_' + key] = function(newValue) {
var oldValue = obj[key];
obj[key] = newValue;
console.log(key, 'changed from', oldValue, 'to', newValue)
};
});
obj.set_a(5);
obj.set_b(6);
obj.set_c(7);