사용자 도구

사이트 도구


wiki:javascript:javascript_note:js_scope

차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

다음 판
이전 판
wiki:javascript:javascript_note:js_scope [2021/05/25 19:54]
emblim98 만듦
wiki:javascript:javascript_note:js_scope [2023/01/13 18:44] (현재)
줄 21: 줄 21:
 %%JavaScript%%에는 함수 스코프가 있습니다. 각 함수는 새 스코프를 만듭니다.\\ %%JavaScript%%에는 함수 스코프가 있습니다. 각 함수는 새 스코프를 만듭니다.\\
 \\ \\
-스코프는 이러한 변수의 접근성 (가시성)을 결정합니다.\\+스코프는 이러한 변수의 접근성 (가시성)을 결정합니다.\\
 \\ \\
 함수 내부에서 정의된 변수는 함수 외부에서 액세스 할 수 없습니다.\\ 함수 내부에서 정의된 변수는 함수 외부에서 액세스 할 수 없습니다.\\
줄 32: 줄 32:
 ====Example==== ====Example====
 <code javascript> <code javascript>
 +  <script>
 +    myFunction();
  
 +    function myFunction() {
 +      var carName = "Volvo";  // local scope이기 때문에 함수 내부에서만 호출 가능
 +      document.getElementById("demo1").innerHTML = typeof carName + " " + carName;  // string Volvo
 +    }
 +    document.getElementById("demo2").innerHTML = typeof carName; 
 +    // undefined, 함수 외부에서 함수 내부를 local scope를 가지는 carName을 호출 불가
 +  </script>
 </code> </code>
 +\\
 +지역 변수는 함수 내에서만 인식되기 때문에, 같은 이름을 가진 변수를 다른 함수에서 사용할 수 있습니다.\\
 +\\
 +지역 변수는 함수가 시작될 때 생성되고 함수가 완료되면 삭제됩니다.\\
  
 +=====Global JavaScript Variables=====
  
 +함수 외부에서 선언된 변수는 **GLOBAL(전역)**이 됩니다.\\
 +\\
 +전역 변수는 **전역 스코프(global scope)**를 가집니다. 웹 페이지의 모든 스크립트와 함수가 전역 변수에 액세스 할 수 있습니다.\\
 +
 +====Example====
 +<code javascript>
 +  <script>
 +    var carName = "Tuscon";
 +    myFunction();
 +
 +    function myFunction() {
 +      document.getElementById("demo").innerHTML = "I can display " + carName; // I can display Tuscon
 +    }
 +  </script>
 +</code>
 +
 +=====JavaScript Variables=====
 +%%JavaScript%%에서, 객체와 함수도 변수입니다.\\
 +\\
 +  스코프는 코드의 다른 부분에서 변수, 개체 및 함수의 접근성을 결정합니다.
 +
 +=====Automatically Global=====
 +선언되지 않은 변수에 값을 할당하면, 자동으로 **GLOBAL(전역)** 변수가 됩니다.\\
 +\\
 +다음 코드 예제는 값이 함수 내부에 할당된 경우에도, 전역 변수 ''%%carName%%''을 선언합니다.\\
 +
 +====Example====
 +<code javascript>
 +  <script>
 +    myFunction();
 +    // code here can use carName as a global variable.
 +    document.getElementById("demo").innerHTML = "I can display " + carName;
 +
 +    function myFunction() {
 +      carName = "Staria";
 +    }
 +    /* If you assing a value to a variable that has not been declared, 
 +    it will automatically become a GLOBAL variable: */
 +  </script>
 +</code>
 +
 +=====Strict Mode=====
 +모든 최신 브라우저는 "Strict Mode"에서 %%JavaScript%% 실행을 지원합니다.\\
 +\\
 +
 +  "Strict Mode"에서, 선언되지 않은 변수는 자동으로 전역변수가 되지 않습니다.
 +
 +=====Global Variables in HTML=====
 +
 +%%JavaScript%%에서, 전역 스코프는 완전한 %%JavaScript%% 환경입니다.\\
 +\\
 +%%HTML%%에서, 전역 스코프는 윈도우 객체입니다. 모든 전역 변수는 윈도우 객체에 속합니다.\\
 +
 +====Example====
 +<code javascript>
 +  <script>
 +    var carName = "All New Rexton";
 +
 +    // code here can use window.carName
 +    document.getElementById("demo").innerHTML = "I can display " + window.carName;
 +    // I can display All New Rexton  
 +    /* In HTML, global variables defined with <b>var</b> will become window variables. */
 +  </script>
 +</code>
 +
 +=====Warning=====
 +의도하지 않는 한, 전역 변수를 만들지 마십시오.\\
 +\\
 +전역 변수 (또는 함수)는 윈도우 변수 (또는 함수)를 덮어 쓸 수 있습니다.\\
 +윈도우 객체를 포함한 모든 함수는 전역 변수 및 함수를 덮어 쓸 수 있습니다.\\
 +
 +=====The Lifetime of JavaScript Variables=====
 +
 +%%JavaScript%% 변수의 수명은 변수가 선언될 때 시작됩니다.\\
 +\\
 +함수가 완료되면, 지역 변수는 삭제됩니다.\\
 +\\
 +웹 브라우저에서, 브라우저의 윈도우 (또는 탭)을 닫으면 전역 변수는 삭제됩니다.\\
  
 +=====Function Arguments=====
  
 +함수 arguments(인수)(parameter매개 변수)는 함수 내에서 지역 변수로 작동합니다.\\
  
  
 {{tag>오션 Javascript Scope}} {{tag>오션 Javascript Scope}}
/volume1/web/dokuwiki/data/attic/wiki/javascript/javascript_note/js_scope.1621940054.txt.gz · 마지막으로 수정됨: 2022/03/10 19:52 (바깥 편집)