这是非常基本的。我尝试实例化在嵌入的外部 .js 文件中定义的类。.js 的代码就是这样。
(function() {
var MyClass;
MyClass = (function() {
function MyClass() {}
MyClass.prototype.name = function(name) {};
return MyClass;
})();
}).call(this);
HTML是这样的
<!DOCTYPE html>
<html>
<head>
<title>Sample Page</title>
<script src="file.js" type="text/javascript"></script>
</head>
<body>
</body>
</html>
如果我尝试在控制台上实例化该类,但我看到ReferenceError: MyClass is not defined
:
var myVar
myVar = new MyClass
> ReferenceError: MyClass is not defined
如果我尝试MyClass
直接从控制台调用,我会得到同样的错误
> ReferenceError: MyClass is not defined
我确定我在这里遗漏了一些明显的可怕东西,但我可以弄清楚是什么。
更新:要创建我使用 CoffeScript 编码的 javascript,代码就是这样。
class MyClass
acc: (name) ->
当使用http://js2coffee.org转换回 CoffeScript 时,建议的答案代码呈现为不同的代码,但它仍然不起作用。想知道 CoffeScript 是否有提示将 MyClass 从本地范围弹出到外部范围。