Я играю с CoffeeScript и ключевым словом «класса», в конечном итоге со следующим:Почему бар не определен в следующем JavaScript?
var Foo, foobar;
Foo = (function() {
function Foo() {}
Foo.bar = 7;
return Foo;
})();
foobar = new Foo;
alert(foobar.bar);
после ввода:
class Foo
@bar = 7
foobar = new Foo
alert foobar.bar
I рода ожидаемого бара, чтобы сохранить это значение, но alert появляется как undefined
Если вас интересуют функции прототипа JavaScript и функции конструктора в JavaScript, я написал введение здесь: http://stackoverflow.com/a/16063711/1641941 Почему значение Foo предоставляется IIFE, потому что вы возможно, захотят использовать значения закрытия. В этом случае он избыточен, потому что у вас его нет. – HMR