본문 바로가기
  • soldonii's devlog

Javascript 공부/Advanced Javascript(-)15

자바스크립트의 스코프 : 함수 스코프와 블록 스코프 *Udemy의"Advanced Javascript Concepts"강의에서 학습한 내용을 정리한 포스팅입니다. *자바스크립트를 배우는 단계라 오류가 있을 수 있습니다. 틀린 내용은 댓글로 말씀해주시면 수정하겠습니다. 감사합니다. :) 함수 스코프 vs. 블록 스코프 용어가 헷갈리니 한 번 정리하고 넘어가자. - 스코프(scope) : 함수가 실행될 때, 함수 내에서 변수에 대한 접근이 어떻게 되는지를 나타내는 용어이다.(함수의 실행 컨텍스트 내에서의 변수 환경이 무엇인지) 스코프는 함수를 기반으로 한 용어이다. - 컨텍스트(context) : this 키워드의 값이 무엇인지를 나타내는 용어이다. 현재 실행 컨텍스트 내에서 어떤 객체를 참조하고 있는지를 의미한다. 컨텍스트는 객체를 기반으로 한 용어이다. .. 2019. 8. 29.
자바스크립트의 스코프 체인과 변수 환경 *Udemy의"Advanced Javascript Concepts"강의에서 학습한 내용을 정리한 포스팅입니다. *자바스크립트를 배우는 단계라 오류가 있을 수 있습니다. 틀린 내용은 댓글로 말씀해주시면 수정하겠습니다. 감사합니다. :) 1. 함수 선언 - 함수 표현식과 함수 선언식 새로운 함수가 실행될 때마다 콜스택에 실행 컨텍스트가 하나씩 쌓인다고 배웠다. 이 실행 컨텍스트 내에서 변수 또는 함수가 메모리에 저장되는데, 함수 표현식과 함수 선언식은 메모리에 함수가 저장되는 방식이 서로 다르다. // function Expression var canada = function() { console.log('cold'); } // function Declaration function india() { cons.. 2019. 8. 29.
자바스크립트의 실행 컨텍스트와 호이스팅 *Udemy의 "Advanced Javascript Concepts" 강의에서 학습한 내용을 정리한 포스팅입니다. *자바스크립트를 배우는 단계라 오류가 있을 수 있습니다. 틀린 내용은 댓글로 말씀해주시면 수정하겠습니다. 감사합니다. :) 1. 실행 컨텍스트(Execution Context) function printName() { return 'Hyunsol' } function findName() { return printName() } function sayMyName() { return findName() } sayMyName() 자바스크립트 엔진은 (), 즉 함수 실행을 보면 "아 내가 무언갈 해야하는구나!"라고 인지하고, 동시에 실행 컨텍스트를 생성한다. 예를 들어, 위 코드에서 sayMyNam.. 2019. 8. 28.
자바스크립트 런타임 : 싱글 쓰레드, 노드 js *Udemy의 "Advanced Javascript Concepts" 강의에서 학습한 내용을 정리한 포스팅입니다. *https://soldonii.github.io에서 2019년 8월 17일(토)에 작성한 글을 티스토리로 옮겨온 포스팅입니다. *자바스크립트를 배우는 단계라 오류가 있을 수 있습니다. 틀린 내용은 댓글로 말씀해주시면 수정하겠습니다. 감사합니다. :) 1. 싱글 쓰레드(Single Threaded) 자바스크립트는 SINGLE THREADED LANGUAGE이다. 자바스크립트의 콜스택은 한 개이기 때문에 다른 작업이 추가로 들어왔을 때, 다른 콜스택에서 작업하는 것이 아니라 현재 콜스택의 위에 쌓이게 되는 것이다. 따라서 자바스크립트는 한 번에 한 개의 작업만을 수행할 수 있다. 비유하자면 내.. 2019. 8. 27.
자바스크립트 런타임 : 콜스택과 메모리 힙 *Udemy의 "Advanced Javascript Concepts" 강의에서 학습한 내용을 정리한 포스팅입니다. *https://soldonii.github.io에서 2019년 8월 16일(금)에 작성한 글을 티스토리로 옮겨온 포스팅입니다. *자바스크립트를 배우는 단계라 오류가 있을 수 있습니다. 틀린 내용은 댓글로 말씀해주시면 수정하겠습니다. 감사합니다. :) 1. Writing Optimized Code 최적화된 코드를 위해서, 아래 5개 키워드를 사용할 때에는 주의가 필요하다는 점을 인지하자. eval() arguments ⇒ destructuring을 통해 arguments 키워드를 대체할 수 있다. for in ⇒ Object.key()를 사용하는 것을 추천한다. with delete # 인라.. 2019. 8. 27.
자바스크립트의 작동 원리는?(크롬 V8 엔진) *Udemy의 "Advanced Javascript Concepts" 강의에서 학습한 내용을 정리한 포스팅입니다. *https://soldonii.github.io에서 2019년 8월 15일(목)에 작성한 글을 티스토리로 옮겨온 포스팅입니다. *자바스크립트를 배우는 단계라 오류가 있을 수 있습니다. 틀린 내용은 댓글로 말씀해주시면 수정하겠습니다. 감사합니다. :) 1. 자바스크립트 엔진 자바스크립트 파일을 작성해서 컴퓨터에게 전달할 때, 컴퓨터는 도대체 어떻게 우리가 작성한 자바스크립트 코드를 해석해서 의도한 결과물을 출력해줄까? 프로그래밍을 공부하는 사람이라면 누구나 한 번쯤은 궁금증을 가질만한 주제이다. 이 내용에 대해서 공부해보자. 사실 컴퓨터는 0과 1로 두개의 값만 이해할 수 있다. 그런데 우리.. 2019. 8. 27.