Я хочу проверить script, если какой-либо другой модуль уже загружен.
if (ModuleName) {
// extend this module
}
Но если ModuleName
не существует, то throw
s.
Если бы я знал, что такое Global Object
, я мог бы это использовать.
if (window.ModuleName) {
// extend this module
}
Но так как я хочу, чтобы мой модуль работал с обоими браузерами и node
, rhino
и т.д., я не могу предположить window
.
Как я понимаю, это не работает в ES 5 с "use strict"
;
var MyGLOBAL = (function () {return this;}()); // MyGlobal becomes null
Это также приведет к сбою с созданным исключением
var MyGLOBAL = window || GLOBAL
Так кажется, что я остался с
try {
// Extend ModuleName
}
catch(ignore) {
}
Ни один из этих случаев не пройдет JSLint.
Я что-то пропустил?