변수 : 하나의 값을 저장하기 위해 확보한 메모리 공간 자체 또는 그 메모리 공간을 식별하기 위해 붙인 이름.식별자 : 어떤 값을 구별해서 식별할 수 있는 고유한 이름을 말함. 식별자는 메모리 주소를 기억.변수 선언 : var, let, const변수 이름을 포함한 모
값 : 식(표현식)이 평가되어 생성된 결과를 말함. 리터럴 : 사람이 이해할 수 있는 문자 또는 약속된 기호를 사용해 값을 생성하는 표기법표현식 : 값으로 평가될 수 있는 문. 표현식이 평가되면 새로운 값을 생성하거나 기존값을 참조.문 : 프로그램을 구성하는 기본 단위
원시타입 : number, string, boolean, undefined, null symbol객체 타입 : 객체, 함수, 배열등 하나의 숫자 타입 존재 (C, Java와 다름)배정밀도 64비트 부동소수점 형식Infinity : 양의 무한대\-Infinity : 음의
이항 산술 연산자단항 산술 연산자피연산자에 +, - 단항 연산자를 사용하면 피연산자를 숫자 차입으로 반환. 부수효과 x\+연산자는 피연산자 중 하나 이상이 문자열인 경우 문자열 연결 연산자로 동작함동등 비교 연산자는 결과를 예측하기 어려워 사용 x일치 비교조건식 ? 조
대부분의 if else 문은 삼항 조건 연산자로 표현 가능switch 문for문while 문continue : 반복문의 코드 블록 실행을 현 지점에서 중단하고 반복문의 증감식으로 실행 흐름을 이동
개발자가 의도적으로 값의 타입을 변환하는 것 : 타입 캐스팅, 명시적 차입 변환개발자의 의도와 상관없이 자바스크립트 엔진에 의해 암묵적으로 타입 변환하는 것 : 암묵적 타입 변환, 타입 강제 변환명시적이든 암시적이든 원시값은 변경 불가능한 값이므로 변경 x타입 변환이란
규칙을 준수하지 않는 이름, 즉 자바스크립트에서 사용 가능한 유효한 이름이 아니면 반드시 대괄호 표기법 사용. 단 프로퍼티 키가 숫자로 이루어진 문자열인 경우 따옴표 생략 가능ES6에서 변수 이름과 프로퍼티 키가 동일한 이름일 때 프로퍼티 키를 생략할 수 있음계산된
원시 값은 변경 불가능한 값변경 불가능하다는 것은 변수가 아니라 값에 대한 진술읽기 전용 값어떤 일이 있어도 불변하기에 데이터 신뢰성을 보장불변성을 갖는 원시 값을 할당한 변수는 재할당 이외에 변수 값을 변경할 수 있는 방법이 없음유사 배열 객체값에 의한 전달ex) s
프로그래밍 언어의 함수는 일련의 과정을 문으로 구현하고 코드 블록으로 감싸서 하나의 실행 단위로 정의한 것이다프로그래밍 언어의 함수도 입력을 받아서 출력을 내보낸다. 이때 함수 내부로 입력을 전달받는 변수를 매개 변수, 입력을 인수, 출력을 반환값이라 함함수는 함수 정
스코프란?모든 식별자(변수 이름, 함수 이름, 클래스 이름등)는 자신이 선언된 위치에 의해 다른 코드가 식별자 자신을 참조할 수 있는 유효 범위가 결정됨. 이를 스코프라 함코트 바깥 영역과 a함수 내부의 x변수를 선언했고 1,2에서 x변수를 참조함. 이때 자바스크립트
지역 변수의 생명 주기4장에서 변수 선언은 선언문이 어디에 있든 상관없이 자바스크립트 엔진에 의해 런타임이전 단계에서 먼저 실행됨. 하지만 이는 전역변수에 한정된 이야기임.지역변수의 생명 주기는 함수의 생명 주기와 일치함.함수 몸체에 생성된 지역 변수의 생명 주기는 함
변수 중복 선언 허용함수 레벨 스코프함수 레벨 스코프는 전역 변수를 남발할 가능성을 높임.변수 호이스팅변수 중복 선언 금지블록 레벨 스코프변수 호이스팅let 키워드로 선언한 변수는 선언단계와 초기화 단계가 분리되어 진행.일시적 사각지대 : 스코프의 시작 시작 지점부터
내부 슬롯과 내부 메서드는 자바스크립트 엔진의 구현 알고리즘을 설명하기 위해 ECMAScript 사양에서 사용하는 의사 프로퍼티와 의사 메서드. 이중 괄호\[\[]]로 감싼 이름들이 내부 슬롯과 내부 메서드임.내부 슬롯과 내부 메서드는 자바스크립트 엔진에서 실제로 동
new 연산자와 함께 Object 생성자 함수를 호출하면 빈 객체를 생성하여 반환.생성자 함수란 new 연산자와 함께 호출하여 객체를 생성하는 함수를 말함. 생성자 함수에 의해 생성된 객체를 인스턴스라 함.객체 리터럴에 의한 객체 생성 방식의 문제점직관적이고 간편하다.
무영의 리터럴로 생성할 수 있음. 런타임에 생성이 가능.변수나 자료구조에 저장할 수 있음함수의 매개변수에 전달할 수 있음.함수의 반환 값으로 사용할 수 있음.위의 조건을 만족하는 객체를 일급 객체라 함.함수가 일급 객체라는 것은 함수를 객체와 동일하게 사용할 수 있다는
프로토타입은 생성자 함수가 생성되는 시점에 더불어 생성됨.사용자 정의 생성자 함수와 프로토타입 생성 시점생성자 함수로서 호출할 수 있는 함수, 즉 constructor는 함수 정의가 평가되어 함수 객체를 생성하는 시점에 프로토타입도 더불어 생성됨.non-construc
strict mode는 자바스크립트 언어의 문법을 좀 더 엄격히 적용하여 오류를 발생시킬 사능성이 높거나 자바스크립트 엔지의 최적화 작업에 문제를 일으킬 수 있는 코드에 대해 명식적인 에러를 발생전역의 선두 또는 함수 몸체의 선두에 'use strict'를 추가. 스크