Node.js: как это требует работы? - PullRequest
0 голосов
/ 18 января 2012

Я пробовал Joose с помощью node.js и сумел создать такой код:

require('joose'); // WHAT?

Class("Dog", {
    methods: {
        bark: function() { console.log('woof'); }
    }
});

var dog = new Dog();
dog.bark();

Я думал, что каждый require в файле node.js должен быть присвоен переменной, в отличие от PHP, в котором вам просто требуется файл, и он работает так, как если бы вы копировали его содержимое в это место.

В этой ситуации Class, по-видимому, сам по себе проникает в основную область, поскольку, если я удаляю оператор require, я получаю ReferenceError: Class is not defined.

Как это работает?

1 Ответ

2 голосов
/ 18 января 2012

Joose внедряет глобальную переменную Class (global.Class = ...), поэтому она видна без специального назначения ее в ваш код.

...