Proszę wyjaśnić, co hack jest tutaj używany (widzę, że wartość null jest przekazywana jako kontekst do funkcji zwracającej właściwość tego kontekstu, więc nie mogę jasno zrozumieć, co się właściwie dzieje tutaj.null przekazywany jako kontekst do wywołania funkcji
function getGlobal(){
return (function(){
return this.dust;
}).call(null);
}
Dlaczego nie wystarczy użyć 'window.dust' bezpośrednio? Czy obiekt globalny może nie być czasem oknem? – KOGI
Rzadko zdarza się, że taki kod jest rzadki. Powodem może być tworzenie biblioteki, która ma być kompatybilna z silnikami js innych niż przeglądarki (np. Node.js): wtedy obiekt globalny nie jest nazywany 'okienkiem'. Ale ogólnie, gdy tworzysz bibliotekę, unikasz dostępu do globalnego obiektu ... –