그간 Webgl에 미쳐서 자바스크립트 지식 없는 채로 Three.js를 배우면서 거꾸로 js를 공부해왔다. 그렇게 어느새 1년이 지나버렸더니 뭐 이것저것 구현은 해 왔는데 기초 공사가 제대로 안 된 느낌이라 다시 처음부터 훑으며 돌아보려고 한다.
변수 선언문이 코드의 선두로 끌어 올려진 것처럼 동작하는 자바스크립트 고유의 특징을 말함. 변수뿐 아니라 키워드를 사용해서 선언하는 모든 식별자는 호이스팅 된다. 즉 변수 선언이 소스코드의 어디에 위치하는지와 상관 없이 어디서든지 변수를 참조할 수 있다.
값은 표현식이 평가되어 생성된 결과이다. 여기서 '평가'란 식을 해석해서 값을 '생성'하거나 '참조'하는것을 말한다. 생성과 할당은 다르다. 변수에 값을 할당하기 위해서는 할당 이전에 평가되어 값을 생성 해야한다.리터럴은 사람이 이해할 수 있는 문자 또는 약속된 기호를
데이터 타입은 값의 종류를 말하며 ES6는 7개의 데이터 타입을 제공한다. 크게 원시 타입과 객체 타입으로 분류할 수 있다. <Deep dive 11장 참고>numberstringbooleanundefinednullsymbol객체, 함수, 배열 등숫자 타입에서 추
하나 이상의 표현식을 대상으로 산술, 할당, 비교, 논리, 타입, 지수 연산 등을 수행하여 하나의 값을 만든다.연산의 대상을 피연산자 라고 한다. 피연산자는 값으로 평가될 수 있는 표현식이어야 한다. 피연산자 + 연산자 조합으로 이루어진 연산자 표현식 또한 값으로 평가
조건에 따라 코드 블록을 실행하거나 반복 실행 할 때 사용한다. 제어문을 사용하면 코드의 실행 흐름을 인위적으로 제어할 수 있다.0개 이상의 문을 중괄호로 묶은 것, 하나의 실행 단위로 취급됨. 블록문은 주로 제어문이나 함수를 정의할 때 사용된다. 블록문은 언제나 문의
자바스크립트의 모든 값은 타입이 있다. 개발자의 의도에 따라 의도적으로 값의 타입을 변화하는 것은 명시적 타입 변환, 표현식을 평가하는 도중 자바스크립트 엔진에 의해 암묵적으로 타입이 변환되는것을 암묵적 타입 변환이라고 한다.타입 변환이 기존 원시 값을 변경하는 것은
단축 평가는 표현식을 평가하는 도중에 평가 결과가 확정된 경우 나머지 평가 과정을 생략하는 것을 말한다.논리곱 논리합 연산자는 논리 연산의 결과를 결정하는 피연산자를 타입 변환하지 않고 그대로 반환하는데, 이를 단축 평가라 한다. 논리 연산자의 논리합과 논리곱 연산자
자바스크립트를 구성하는 원시 값을 제외한 나머지 값(함수, 배열, 정규 표현식)은 모두 객체다. 원시 값 또는 다른 객체 등 다양한 타입의 값을 하나의 단위로 구성한 복합적인 자료구조다.객체는 프로퍼티와 메서드로 구성된 집합체이다.프로퍼티는 프로퍼티 키와 값으로 이루어
대체 너네 언제까지 날 귀찮게 할래? 볼때마다 또 새로운 변수 지식들.계속해서 쫌쫌따리 알아보고 추가 할 것 같다.var 키워드로 q를 선언 이전에 q = 2;라는 할당을 했는데 후에 한 q에 대한 선언이 이전의 할당값을 그대로 가져가는게 도무지 이해가 안갔다.변수를
원시 타입의 값은 변경 불가능한 값이다. 객체 타입의 값은 변경 가능한 값이다.변수는 하나의 값을 저장하기 위해 확보한 메모리 공간 자체 또는 그 메모리 공간을 식별하기 위해 붙인 이름. 값은 변수에 저장된 데이터로서 표현식이 평가되어 생성된 결과를 말한다. 변수는 언
함수