2017-10-06 5 views
3

, 나는 다음과 같은 작업을 수행 할 수자바 스크립트 : 자바 스크립트에 루아의 _G가 있나요? 루아에서

_G.print("Hello world") 
print("Hello world") 

그리고 그것은 모두 화면에 동일한 문자열을 인쇄합니다. 자바 스크립트에서 전역 개체에 액세스하는 방법이 있습니까? 나는 당신이 사용할 수있는 브라우저에서는

+0

내가이 생각을 '당신이 찾고있는 window' ... 예를 들면,'에 대한 –

+0

그것은 작품을 나던 window.console.log' node.js (전 보편적 인 솔루션을 preffer) – Rph

답변

3

(I 변경에 대한 전역 객체를 스캔하여 내 웹 사이트에 코드 주입을 방지 할)

_G.console.log === console.log 
true 

처럼 내 유스 케이스에 정말 도움이 될 것입니다 의미 window 또는 self . 노드에서는 global을 사용할 수 있습니다. 그러나 이것은 일반적으로 표준화되어 있지는 않지만 there is a proposal for standardizing입니다. 제안은 또한 글로벌 개체를 얻을 수있는 환경 불가지론 방법을 보여줍니다

var getGlobal = function() { 
    // the only reliable means to get the global object is 
    // `Function('return this')()` 
    // However, this causes CSP violations in Chrome apps. 
    if (typeof self !== 'undefined') { return self; } 
    if (typeof window !== 'undefined') { return window; } 
    if (typeof global !== 'undefined') { return global; } 
    throw new Error('unable to locate global object'); 
};