사용자 도구

사이트 도구


wiki:javascript:javascript_note:js_let

차이

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

차이 보기로 링크

양쪽 이전 판 이전 판
다음 판
이전 판
wiki:javascript:javascript_note:js_let [2021/04/13 16:19]
emblim98
wiki:javascript:javascript_note:js_let [2023/01/13 18:44] (현재)
줄 211: 줄 211:
     <h2>JavaScript Global Variables</h2>     <h2>JavaScript Global Variables</h2>
     <p>In HTML, global variables defined with <b>var</b> will become window variables.</p>     <p>In HTML, global variables defined with <b>var</b> will become window variables.</p>
-    <p id="demo"></p>+    <p id="demo"></p>   <!-- I can display Carnival -->
     <script>     <script>
         var carName = "Carnival";         var carName = "Carnival";
줄 228: 줄 228:
     <h2>JavaScript Global Variables</h2>     <h2>JavaScript Global Variables</h2>
     <p>In HTML, global variables defined with <b>let</b> will not become window variables.</p>     <p>In HTML, global variables defined with <b>let</b> will not become window variables.</p>
-    <p id="demo"></p>+    <p id="demo"></p>    <!-- I can not display undefined -->
     <script>     <script>
         let carName = "Tusan";         let carName = "Tusan";
줄 237: 줄 237:
 </html> </html>
 </code> </code>
 +
 +=====Redeclaring=====
 +''%%var%%''로 %%JavaScript%% 변수를 다시 선언하는 것은 프로그램의 모든 위치에서 허용됩니다.\\
 +<code javascript>
 +
 +</code>
 +\\
 +동일한 범위 또는 동일한 블록에서 let을 사용하여 var 변수를 다시 선언하는 것은 허용되지 않습니다.\\
 +<code javascript>
 +var x = 2;     // Allowed
 +let x = 3;     // Not allowed
 +
 +{
 +  var x = 4;   // Allowed
 +  let x = 5;   // Not Allowed
 +}
 +</code>
 +\\
 +동일한 범위 또는 동일한 블록에서 let을 사용하여 let 변수를 다시 선언하는 것은 허용되지 않습니다.\\
 +<code javascript>
 +let x = 2;     // Allowed
 +let x = 3;     // Not allowed
 +
 +{
 +  let x = 4;   // Allowed
 +  let x = 5;   // Not allowed
 +}
 +</code>
 +\\
 +let을 사용하여 다른 범위 또는 다른 블록에서 변수를 다시 선언하는 것은 허용됩니다.\\
 +<code javascript>
 +<!DOCTYPE html>
 +<html lang="en">
 +<body>
 +    <h2>JavaScript let</h2>
 +    <p>Reclaring a variable with <b>let</b> in another scope or in another block is allowed.</p>
 +    <p id="demo"></p>
 +    <script>
 +        let x = 2;  // Allowed
 +
 +        {
 +            let x = 3;  // Allowed
 +        }
 +
 +        {
 +            let x = 4;   // Allowed
 +        }
 +        document.getElementById("demo").innerHTML = x;
 +    </script>
 +</body>
 +</html>
 +</code>
 +
 +=====Hoisting=====
 +''%%var%%''로 정의된 변수는 맨 위로 올라 와서 언제든지 초기화 될 수 있습니다.\\ 
 +\\
 +hositing: 끌어 올리기, 들어올려 나르기\\
 +의미: 변수를 선언하기 전에 사용할 수 있습니다:\\
 +<code javascript>
 +<!DOCTYPE html>
 +<html>
 +<body>
 +    <h2>JavaScript Hoisting</h2>
 +    <p>With <b>var</b>, you can use a variable before it is declared:</p>
 +    <p id="demo"></p>
 +    <script>
 +        carName = "Avante";
 +        document.getElementById("demo").innerHTML = carName;
 +        var carName;
 +    </script>
 +</body>
 +</html>
 +</code>
 +\\
 +''%%let%%''으로 정의된 변수는 블록의 맨 위에 올려지지만, 초기화되지는 않습니다.\\
 +\\
 +의미 : 코드 블록은 변수를 인식하지만, 선언될 때까지 사용할 수 없습니다.\\
 +\\
 +선언하기 전에 ''%%let%%'' 변수를 사용하면 ''%%ReferenceError%%''가 발생합니다.\\
 +\\
 +변수는 선언될 때까지 블록이 시작하는 곳에 있는 "TDZ(Temporal Dead Zone)"에 있습니다.\\
 +
 +====예제====
 +다음은 ''%%ReferenceError%%''을 발생시킵니다.\\
 +<code javascript>
 +<!DOCTYPE html>
 +<html>
 +<body>
 +    <h2>JavaScript Hoisting</h2>
 +    <p>With <b>let</b>, you can use a variable before it is declared:</p>
 +    <p id="demo"></p>
 +    <script>
 +        try {
 +            carName = "Avante";
 +            let carName;
 +            document.getElementById("demo").innerHTML = carName;
 +        }
 +        catch (err) {
 +            document.getElementById("demo").innerHTML = err.name + " : " + err.message;
 +        }
 +    </script>
 +</body>
 +</html>
 +</code>
 +
 +
 +
 +
  
  
/volume1/web/dokuwiki/data/attic/wiki/javascript/javascript_note/js_let.1618298349.txt.gz · 마지막으로 수정됨: 2022/03/10 19:52 (바깥 편집)