누군가이 바이올린의 출력을 설명 할 수 있습니까?

할쿠 자브라

이 코드가 있습니다. 올바른 출력으로 예상했던 'i' (주석에) 값을 작성했습니다 . 그러나 출력 / 경고는 다릅니다.

Fiddle : http://jsfiddle.net/e2jbno4a/
코드 :

var i = 10;

function outer() {
    alert(i); // 10
    var i = 5;
    alert(i); // 5
    function inner() {
        var i = 20;
    }
    inner();
    alert(i); // 5
    if (1) {
        var i = 30;
    }
    alert(i); // 5
    setTimout(function () {
        alert(i); // 5
    }, 100);
}

outer();

누군가 나에게 출력 이유를 알려줄 수 있습니까? 아니면 특정 개념을 설명하는 포인터 만 있습니까?

Cerbrus

따라서 단계적으로 :

var i = 10;

function outer() {
    alert(i); // undefined
    var i = 5;
    alert(i); // 5 (i now references the `i` in this function's scope.)
    function inner() {
        var i = 20; // (The `20` is only available in the scope of `inner`)
    }
    inner();
    alert(i); // 5 (So, this `i` still references the `var i = 5;` one)
    if (1) {
        var i = 30;
    }
    alert(i); // 30 (This one actually alerts `30`. There is no block scope in JS)
    setTimeout(function () {
        alert(i); // 5 (This will log `30`, you made a typo in the `setTimeout` call)
    }, 100);
}

outer();

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

누군가이 변화하는 'du'출력을 설명 할 수 있습니까?

분류에서Dev

누군가이 교대 / 긴 땜질 출력을 설명 할 수 있습니까?

분류에서Dev

누군가 open mpi로이 valgrind 출력을 설명 할 수 있습니까?

분류에서Dev

누군가이 C ++ 줄을 설명 할 수 있습니까?

분류에서Dev

누군가이 이상한 자바 스크립트 날짜 출력을 설명 할 수 있습니까?

분류에서Dev

누군가이 명령의 기능을 설명 할 수 있습니까?

분류에서Dev

누군가 openssl cli와 C ++ DES 출력의 차이점을 설명 할 수 있습니까?

분류에서Dev

누군가이 C ++ 프로그램의 출력을 설명 할 수 있습니까?

분류에서Dev

누군가 나에게이 코드의 출력을 설명 할 수 있습니까?

분류에서Dev

누군가이 반올림 동작을 설명 할 수 있습니까?

분류에서Dev

누군가 내 cmd 출력을 설명 할 수 있습니까?

분류에서Dev

파이썬. 누군가 나에게 다음 출력을 설명 할 수 있습니까?

분류에서Dev

누군가이 typescript 메서드 서명을 설명 할 수 있습니까?

분류에서Dev

누군가이 코드의 기능을 설명 할 수 있습니까?

분류에서Dev

누군가가 datepicker 에서이 코드 줄을 설명 할 수 있습니까?

분류에서Dev

누군가이 코드에서이 줄을 설명 할 수 있습니까?

분류에서Dev

누군가이 find 메서드 동작을 설명 할 수 있습니까?

분류에서Dev

누군가이 JS 기능을 나에게 설명 할 수 있습니까?

분류에서Dev

누군가이 "Longest Common Subsequence"알고리즘을 설명 할 수 있습니까?

분류에서Dev

누군가이 사전 동작을 설명 할 수 있습니까?

분류에서Dev

누군가이 maven-jar-plugin 구성을 설명 할 수 있습니까?

분류에서Dev

누군가이 Array.prototype.find () polyfill을 설명 할 수 있습니까?

분류에서Dev

누군가 이것을 설명 할 수 있습니까? thing variable = new thing () ;?

분류에서Dev

누군가이 Batch 라인을 나에게 설명 할 수 있습니까?

분류에서Dev

LLVM IR-누군가이 동작을 설명 할 수 있습니까?

분류에서Dev

누군가 나를 위해이 SQL을 설명 할 수 있습니까?

분류에서Dev

누군가 "$ {files [@]}"의 기능을 설명 할 수 있습니까?

분류에서Dev

누군가이 JavaScript 코드를 설명 할 수 있습니까?

분류에서Dev

누군가이 C ++ 코드를 설명 할 수 있습니까?

Related 관련 기사

  1. 1

    누군가이 변화하는 'du'출력을 설명 할 수 있습니까?

  2. 2

    누군가이 교대 / 긴 땜질 출력을 설명 할 수 있습니까?

  3. 3

    누군가 open mpi로이 valgrind 출력을 설명 할 수 있습니까?

  4. 4

    누군가이 C ++ 줄을 설명 할 수 있습니까?

  5. 5

    누군가이 이상한 자바 스크립트 날짜 출력을 설명 할 수 있습니까?

  6. 6

    누군가이 명령의 기능을 설명 할 수 있습니까?

  7. 7

    누군가 openssl cli와 C ++ DES 출력의 차이점을 설명 할 수 있습니까?

  8. 8

    누군가이 C ++ 프로그램의 출력을 설명 할 수 있습니까?

  9. 9

    누군가 나에게이 코드의 출력을 설명 할 수 있습니까?

  10. 10

    누군가이 반올림 동작을 설명 할 수 있습니까?

  11. 11

    누군가 내 cmd 출력을 설명 할 수 있습니까?

  12. 12

    파이썬. 누군가 나에게 다음 출력을 설명 할 수 있습니까?

  13. 13

    누군가이 typescript 메서드 서명을 설명 할 수 있습니까?

  14. 14

    누군가이 코드의 기능을 설명 할 수 있습니까?

  15. 15

    누군가가 datepicker 에서이 코드 줄을 설명 할 수 있습니까?

  16. 16

    누군가이 코드에서이 줄을 설명 할 수 있습니까?

  17. 17

    누군가이 find 메서드 동작을 설명 할 수 있습니까?

  18. 18

    누군가이 JS 기능을 나에게 설명 할 수 있습니까?

  19. 19

    누군가이 "Longest Common Subsequence"알고리즘을 설명 할 수 있습니까?

  20. 20

    누군가이 사전 동작을 설명 할 수 있습니까?

  21. 21

    누군가이 maven-jar-plugin 구성을 설명 할 수 있습니까?

  22. 22

    누군가이 Array.prototype.find () polyfill을 설명 할 수 있습니까?

  23. 23

    누군가 이것을 설명 할 수 있습니까? thing variable = new thing () ;?

  24. 24

    누군가이 Batch 라인을 나에게 설명 할 수 있습니까?

  25. 25

    LLVM IR-누군가이 동작을 설명 할 수 있습니까?

  26. 26

    누군가 나를 위해이 SQL을 설명 할 수 있습니까?

  27. 27

    누군가 "$ {files [@]}"의 기능을 설명 할 수 있습니까?

  28. 28

    누군가이 JavaScript 코드를 설명 할 수 있습니까?

  29. 29

    누군가이 C ++ 코드를 설명 할 수 있습니까?

뜨겁다태그

보관