Механизм JavaScript Spider-Monkey реализует функцию обратного вызова __noSuchMethod__
для объектов JavaScript.
Эта функция вызывается всякий раз, когда JavaScript пытается выполнить метод undefined объекта.
Я хотел бы установить функцию обратного вызова для объекта, который будет вызываться всякий раз, когда к объекту, к которому осуществляется доступ или назначается свойство undefined.
Я не нашел функцию __noSuchProperty__
, реализованную для объектов JavaScript, и я являюсь любопытным, если есть какое-либо обходное решение, которое достигнет того же результата.
Рассмотрим следующий код:
var a = {};
a.__defineGetter__("bla", function(){alert(1);return 2;});
alert(a.bla);
Это эквивалентно [alert(1);alert(2)]
- даже если a.bla undefined.
Я хотел бы добиться того же результата, но с неизвестными свойствами (т.е. не зная заранее, что доступ к свойствам "бла" будет доступным)