Javascript 如何";使用“严格的”;对于匿名函数中的类?
我正试图建立一个使用严格标准的图书馆Javascript 如何";使用“严格的”;对于匿名函数中的类?,javascript,Javascript,我正试图建立一个使用严格标准的图书馆 /*jslint */ (function() { 'use strict'; function MyLibrary() { } MyLibrary.prototype.add = function () { } }()); var usersLibrary = new MyLibrary(); 我尝试使用经典语法来实例化类(使用“new”)。不幸的是,我无法调用myLibrary,因为它的作用域在函数中。
/*jslint */
(function() {
'use strict';
function MyLibrary() {
}
MyLibrary.prototype.add = function () {
}
}());
var usersLibrary = new MyLibrary();
我尝试使用经典语法来实例化类(使用“new”)。不幸的是,我无法调用myLibrary,因为它的作用域在函数中。将其显式添加到全局上下文:
(function(global) {
'use strict';
function myLibrary() {
}
myLibrary.prototype.add = function () {
}
global.myLibrary = myLibrary;
}(this));
这不是窗口吗?jslint的blabbing:“MyLibrary”在定义之前就已经使用过了。@user3448187是的,但这样做意味着代码也可以在Node.js中工作(这可能并不重要)。我不知道为什么jslint会抱怨;它在抱怨什么?当我实例化这个类时,它在抱怨。var foo=new MyLibrary()可能定义为IIFE之前的全局变量:
var MyLibrary代码>。