Variablen im globalen Namensraum
bearbeitet vonTach!
> Gibt's da irgendwelche Strategien, diese Auswüchse im globalen Namensraum zu vermeiden?
Ja, einen Block erstellen.
~~~js
{
let i = 0;
function foo() {
return i++;
}
}
console.log(foo());
console.log(foo());
console.log(foo());
~~~
Somit sitzt nur die Funktion im globalen Namensraum. Moderne Alternativen sind außerdem Module.
m.js:
~~~js
let i = 0;
function foo() {
return i++;
}
module.exports = foo;
~~~
woanders.js:
~~~js
const foo = require('./m');
console.log(foo());
console.log(foo());
console.log(foo());
~~~
dedlfix.