Альтернатива просто делает это
нахожу здесь ничего о моем вопросе о спецификациях MDC или ECMAscript. Возможно, кто-то знает более «хакерский» способ решить эту проблему.
я звоню"use strict"
на каждом файле JavaScript в моей среде. Все мои файлы начинаются так
(function(win, doc, undef) {
"use strict";
// code & functions
}(window, window.document));
Теперь у меня есть пользовательская функция, которая обрабатывает ошибки. Эта функция использует.caller
свойство обеспечитьтрассировка стека контекста, Выглядит так:
var chain = (function() {
var _parent = _error,
_ret = '';
while( _parent.caller ) {
_ret += ' -> ' + _parent.caller.name;
_parent = _parent.caller;
}
return _ret;
}());
Но конечно в строгом режиме.caller
это не удаляемый реквизит, который выбрасывает при получении. Так что мой вопрос, кто-нибудь знает способзапрещать более строгое "функционально"?
"use strict";
наследуется всеми функциями после вызова. Теперь у нас есть возможность просто использовать строгий режим в определенных функциях, просто вызывая"use strict";
на вершине тех, но есть ли способ достичь противоположного?