▶이동
  • 상구너 닷컴 블로그를 방문하신 여러분을 환영합니다 :)
  • 스팸 정책에 의해 일부 덧글·방명록차단될 수 있습니다.

클로저 특성으로, 내부함수에서 외부함수의 지역변수에 접근 할 수 있는데, 외부함수의 실행이 끝나서 외부함수가 소멸된 이후에도 내부함수가 외부함수의 변수에 접근 할 수 있다. -> 함수 안의 내부함수나 그 로컬 변수들은 그 외부함수의 밖에서 접근을 못한다. 


잘못 작성된 코드

결과

그러면 왜 5만 5번이 출력이 되었을까?


=>

클로저의 특성인 내부함수에서 외부함수의 지역변수에 접근을 하는것인데 arr[i] 로 정의된 함수에서 사용하는 i는 외부함수의 지역변수가 아니다.

arr[i] 는 i를 리턴하는 함수로만 사용이 되는데, 이 i 가 외부함수의 지역변수가 아니기 때문에 for문을 이미 종료된 상태인 i = 5 인 상황이 되어버리기 때문이다.

고쳐진 코드

결과


=>

for문을 돌때 미리 i를 이용한 외부변수를 실행하여(실행후 소멸됨) 각각 arr[i]는 실행된 외부함수로부터 반환된 내부함수가 되기 때문에 다른방식의 결과가 나오기 때문이다.


참고 https://opentutorials.org/course/743/6544

저작자 표시 비영리 변경 금지
신고

'Study > JScript/JQuery' 카테고리의 다른 글

클로저(Closure) 의 특성과 응용 그리고 실수  (0) 2017.01.05
Canvas Context 메소드 확장하기.  (0) 2016.05.10
_h5ai audio,video autoplay  (0) 2014.09.29
0 0
  • 공지사항
    중요한 개인정보필요한 경우가 아닌 경우 적지 마시고, 적으셨다면 비밀글 설정을 꼭 해주시기 바랍니다.
    스팸 필터 정책에 의해 영문만으로 작성된 글이나 무의미한 내용의 글은 등록이 되지 않을 수도 있습니다.
  • display,visibility 속성 정리

    Study/Markup 상구너(smokingbird) 2017.01.05 13:54

    display 속성


    display: inline  기본값으로, 요소를 inline 요소처럼 표시합니다. => 앞뒤로 줄바꿈 되지 않습니다.

     

    display: block  요소를 block 요소처럼 표시합니다. => 따라서 요소 앞 뒤로 줄바꿈 됩니다

     

    display: none 박스가 생성되지 않습니다. => 따라서 공간을 차지하지도 않습니다.

     

    display: inline-block 요소는 inline인데 내부는 block 처럼 표시함.  => 즉, 박스 모양이 inline 처럼 옆으로 늘어섬.





    visibility 속성



    visibility: visible  기본값으로 요소가 그대로 보입니다.visibility: hidden  요소가 보이지 않지만, 여전히 그 공간을 차지하며 투명하게 남습니다.

    visibility: collapse <table> 태그에서만 사용할 수 있는 값으로, 선택 테이블의 행과 열을 숨깁니다.

     

    하지만 여전히 투명하게 공간을 차지 합니다. 

    <table> 이외에서 사용하면 hidden 상태처럼 만듭니다. 

    (collapse는 IE, Firefox에서만 작동)


    참고 : http://aboooks.tistory.com/85

    저작자 표시 비영리 변경 금지
    신고

    'Study > Markup' 카테고리의 다른 글

    display,visibility 속성 정리  (0) 2017.01.05
    display: inline-block 여백이 생기는 현상  (0) 2017.01.05
    0 0
  • 공지사항
    중요한 개인정보필요한 경우가 아닌 경우 적지 마시고, 적으셨다면 비밀글 설정을 꼭 해주시기 바랍니다.
    스팸 필터 정책에 의해 영문만으로 작성된 글이나 무의미한 내용의 글은 등록이 되지 않을 수도 있습니다.
  • display: inline-block 여백이 생기는 현상

    Study/Markup 상구너(smokingbird) 2017.01.05 13:51

    Version:1.0 StartHTML:0000000105 EndHTML:0000015589 StartFragment:0000001096 EndFragment:0000015557

    1. 문제 발생 (예제)

    1000px 로 설정한 div

    다시 150px, 700px, 150px 로 나누고

    안쪽의 div에는 display: inline-block 속성을 주었는데

    맨 오른쪽 div 영역이 아래쪽으로 밀려내려감

    *** divpaddingmargin, border는 모두 0px 이었음

     

    2. 원인

    <div> 태그 등으로 다른 태그들을 묶어주는 경우,

    div 태그 또한 inline-element로 인식을 하기 때문에

    div들끼리 마주하는 부분에서 여백이 생김

    div 뿐만아니라, span도 마찬가지

     

    3. 해결 방법

    .container { // 부모 랩퍼

    ...

    font-size: 0px;

    letter-spacing: 0px;

    word-spacing: 0px;

    }

     

    .container > div { // 간격이생기던 엘리먼트

    ...

    font-size: 15px;

    letter-spacing: 1em;

    word-spacing: 2em;

    }

     

    감싸고 있는 divfont-size, letter-spacing, word-spacing0px로 줄임 ->

    안쪽의 div에서 복구.

     

    4. 간단 해법

    .container > div { // 간격이생기던 엘리먼트

    ...

    float:left;

    }


    참고


    http://comajava.blogspot.kr/2013/12/display-inline-block-width-margin-css.html

    저작자 표시 비영리 변경 금지
    신고

    'Study > Markup' 카테고리의 다른 글

    display,visibility 속성 정리  (0) 2017.01.05
    display: inline-block 여백이 생기는 현상  (0) 2017.01.05
    0 0
  • 공지사항
    중요한 개인정보필요한 경우가 아닌 경우 적지 마시고, 적으셨다면 비밀글 설정을 꼭 해주시기 바랍니다.
    스팸 필터 정책에 의해 영문만으로 작성된 글이나 무의미한 내용의 글은 등록이 되지 않을 수도 있습니다.
  • mWeb Mac버전 배포

    Develop 상구너(smokingbird) 2016.11.22 11:16


    Let's Others 님이 제작 배포하신 warning 우회 프로그램 mWeb 을 

    Mac에서도 사용 가능하도록 패키지 하였습니다.


    Wine Bottler로 패키징 하느라 파일이 많이 커졌습니다. (어쩔 수 없어요 ..)


    다운로드 받은 파일는 7z파일로 keka등의 압축프로그램을 통해 압축해제후 사용이 가능합니다.


    원작자님 페이지는 http://letsothers.tistory.com/


    다운로드

    https://drive.google.com/file/d/0B2IXwZh7uZaZSlcwNUxmTGhwclU/view?usp=sharing


    사용법은 아래를 참조하시기바랍니다.



    먼저 실행하면 보게되는 화면에서 중지를 먼저 누른후


    시스템 프록시 설정은 자동으로 안되므로 해제

    빈포트번호 자동으로찾기는 매번 바뀌지않게 체크해제하고 고정하면 편했습니다.


    본인의 프록시 포트는 적어주세요



    맥 설정에 들어갑니다




    네트워크 설정에 들어갑니다



    이더넷의 고급설정에 들어갑니다.





    프록시  탭을 엽니다.




    웹프록시를 선택하시면



    위와같은 설정이 가능한데요,

    주소(127.0.0.1)는 그대로 두시고 포트번호(65535)부분 만 

    본인의 프록시 포트번호로 수정하신후


    승인을 눌러주세요.


    확인은 직접 해보시기 바랍니다.


    El Capitan 에서 정상작동함을 확인했습니다.




    저작자 표시 비영리 변경 금지
    신고

    'Develop' 카테고리의 다른 글

    mWeb Mac버전 배포  (3) 2016.11.22
    개발자 후원하기.  (0) 2016.07.13
    구너갤러리 15.11.2  (0) 2015.11.16
    구너갤러리 15.11  (0) 2015.11.04
    구너 플레이어 15.11  (1) 2015.11.04
    베지에 곡선 (Bezier Curve)  (1) 2015.09.04
  • 공지사항
    중요한 개인정보필요한 경우가 아닌 경우 적지 마시고, 적으셨다면 비밀글 설정을 꼭 해주시기 바랍니다.
    스팸 필터 정책에 의해 영문만으로 작성된 글이나 무의미한 내용의 글은 등록이 되지 않을 수도 있습니다.
  • mWeb Mac버전 사용시 문자가 깨져보이는 경우가 있을'수'있습니다.
    글자가 구별하기 힘들뿐 사용에는 이상이 없으나,
    이쁘게 보고싶으시면 네이버에서 나눔고딕을 다운로드 받으셔서 설치하셔도되고,
    그냥 감으로 클릭하셔서 켜셔도 됩니다.
  • 프록시가 켜진 상태로 mWeb을 끄면 웹이 열리지 않습니다.
    이때는 프록시 탭에서 프록시체크를 해제하셔야합니다.
  • 나그네 2017.11.12 23:06 신고
    안녕하세요?

    혹시 시에라에서는 실행 안되나요?

    실행할 수 없다고 뜨네요.
  • 인한사전 InKrKamus v2.0 For Web 을 공개합니다.


    InKrKamus v2.0 For Web 을 공개합니다.


    이번 버전은 인터넷이 되는 모든 PC와 모바일에서 동작하며,


    다운받을 필요도 없습니다.



    아래 링크를 클릭해주세요^^


    http://inkrkamus.sanguneo.com/


    세부 인터페이스는 이전버전과 크게 다르지 않습니다.






    모바일이나 PC 어디에서든 가능합니다.


    지금 바로 사용해보세요 ^^


    http://inkrkamus.sanguneo.com/

    저작자 표시 비영리 변경 금지
    신고
    0 0
  • 공지사항
    중요한 개인정보필요한 경우가 아닌 경우 적지 마시고, 적으셨다면 비밀글 설정을 꼭 해주시기 바랍니다.
    스팸 필터 정책에 의해 영문만으로 작성된 글이나 무의미한 내용의 글은 등록이 되지 않을 수도 있습니다.