본문 바로가기

Javascript3

Scope는 무엇일까? Scope는 무엇일까? scope라는 영어 단어의 의미는 범위이다. 컴퓨터 공학, 그리고 JS에서도 범위라는 의미를 가진다. 그리고 이는 javascript에만 존재하는 개념은 아니다. Scope란? 식별자 접근 규칙에 따른 유효 범위 Scope의 정의는 식별자 접근 규칙에 따른 유효범위이다. 여기서 식별자란 변수, 함수, 클래스 와 같은것을 의미한다. 그래서 식별자에 따라 접근할 수 있는 범위가 존재한다. 범위는 중괄호(블록) 또는 함수에 의해 나눠지는데 이 범위를 Block Scope 그리고 Function Scope라고 부른다. 스코프의 주요 특징 안쪽 스코프에서 바깥쪽 스코프로 접근할 수 있지만 반대는 불가능하다. function ImChangGyu() { let i = 0; function GS.. 2022. 8. 4.
자바스크립트... 너란 남자,,, 자바스크립트는 어떻게 돌아가는가 ARABOZA 자바스크립트는 무슨 언어인가요? 자바스크립트는 웹페이지의 복잡한 기능을 구현할 수 있게 해주는 스크립트 언어이자 프로그래밍 언이입니다. 자바스크립트 특징 자바스크립트는 머리가 한개 입니다. 자바스크립트는 싱글쓰레드 언어 입니다. 이는 한번에 한가지의 일만 처리할 수 있다는 것입니다. 게임 하면서 옆에 친구와 이야기하는것 이런게 불가능한 사람들 처럼 말이죠. 또한 chrome의 alert창을 열면 alert창 닫기전까지는 아무것도 할 수 없는것 또한 싱글쓰레드 이기 때문입니다. 그럼 싱글쓰레드인 자바스크립트의 코드는 어떻게 동작할까요? 자바스크립트 엔진. 자바스크립트는 JS engine을 통해 코드가 실행됩니다. 대표적인 JS engine으로는 V8 엔진(ch.. 2022. 6. 7.
호이스팅에 대해 ARABOZA 호이스팅에 대해 ARABOZA 호이스팅이란. javascript에서의 호이스팅은 인터프리터가 변수와 함수의 메모리 공간을 선언 전에 미리 할당하는 것을 의미한다. function catName(cat: string) { console.log(`고양이 이름은 ${cat} 입니다.`); } catName('먼치킨'); 평소의 함수 선언이라면 이렇게 되는게 맞지만 catName('먼치킨'); function catName(cat: string) { console.log(`고양이 이름은 ${cat} 입니다.`); } 그런데 위처럼 그냥 함수의 선언부가 밑에 있음에도 불구하고 console에 먼치킨이 찍히는 결과를 볼 수 있다. 이는 바로 호이스팅 즉 선언부를 코드의 상단으로 올리는 방식이기에 가능한 코드인거다... 2022. 6. 4.