11-1 원시 값자바스크립트가 제공하는 8가지 데이터 타입은 크게 원시타입과 객체타입으로 구분 할 수 있다. 원시 타입과 객체 타입은 크게 3가지 측면에서 다르다.원시 타입의 값은 변경 불가능한 값이다. 객체(참조) 타입의 값은 변경 가능한 값이다.원시 타입의 값을 변수에 할당하면 변수(확보된 메모리 공간)에는 실제 값이 저장된다. 객체를 변수에 할당하면 변수에는 참조 값이 저장된다.원시 값을 갖는 변수를 다른 변수에 할당하면 원본의 원시 값이 복사 되어 전달된다.(값에 의한 전달) 객체를 가리키는 변수를 다른 변수에 할당하면 원본의 참조 값이 복사되어 전달된다. (참조에 의한 전달)변경 불가능한 값원시 타입의 값, 즉 원시 값은 변경 불가능한 값이다. 변경 불가능 하다는 것은 변수가 아니라 값에 대한 ..
프론트엔드
10-1 객체란?자바스크립트를 구성하는 거의 모든 것이 객체 이다.원시 타입의 값은 변경 불가능 한 값 (immutable value) 이지만, 객체는 변경 가능한 값 (mutable value) 이다.객체는 0개 이상의 프로퍼티로 구성된 집합이다. 프로퍼티는 키와 값으로 구성된다.let person = { //키 값 name : 'Lee', // 프로퍼티 age : 20, // 프로퍼티};자바스크립트의 모든 값은 프로퍼티 값이 될 수 있다. 다시 말해 함수도 프로퍼티 값이 될 수 있다. 프로퍼티 값이 함수일 경우 구분하기 위해 메서드라고 부른다.프로퍼티: 객체의 상태를 나타내는 값메서드: 프로퍼티를 참조하고 조작할 수 있는 동작let counter = { num: 0, // 프로퍼티 ..
9-1 타입 변환이란?개발자가 의도적으로 값의 타입을 변경하는 것을 명시적 타입 변환 또는 타입 캐스팅이라 한다.개발자의 의도와는 상관 없이 표현식을 평가하는 도중에 자바스크립트 엔진에 의해 암묵적으로 타입이 자동 변환되는 것은 암묵적 타입 변환 혹은 강제 타입 변환이라고 한다.9-2 암묵적 타입 변환암묵적 타입 변환은 기존 변수 값을 재할당하여 변경하는 것이 아니고 새로운 타입 값을 만들어 한번 사용하고 버린다.문자열 타입으로 변환피연산자중 하나 이상이 문자열이라면 아래와 같이 문자열 타입으로 암묵적 타입 변환한다.// 숫자 타입0 + '' // "0" -0 + '' // "0"1+ '' // "1" -1 + '' ..
연산자는 하나 이상의 표현식을 대상으로 산술, 할당, 비교, 논리, 타입, 지수 연산 등을 수행해서 하나의 값을 만든다.연산의 대상인 피연산자는 값으로 평가될 수 있는 표현식이어야 하며, 피연산자와 연산자의 조합으로 이루어진 연산자 표현식도 값으로 평가될 수 있는 표현식이다.연산자는 피연산자를 연산하여 새로운 값을 만드는 동사의 역할을 한다.7-1 산술 연산자산술 연산자는 피연산자를 대상으로 수학적 계산을 수행하여 새로운 숫자 값을 만든다. 산술이 불가한 경우 NaN(not a number)를 반환한다.피연산자의 개수에 따라 이항 산술 연산자와 단항 산술 연산자로 구분한다.이항 산술 연산자이항 산술 연산자는 2개의 피연산자를 산술 연산하여 숫자 값을 만든다.언제나 새로운 값을 만들며 기존 피연산자의 값을..
제어문은 조건에 따라 코드 블록을 실행하거나 반복 실행할 때 사용한다. 8-1 블록문 블록문은 0개 이상의 문을 중괄호로 묶은 것이다. // 블록문 { var foo = 10; } // 제어문 var x = 1; if (x 0) { kind = ..
데이터 타입은 값의 종류를 말하며, ES6는 7개의 데이터 타입을 제공한다. 7개의 데이터 타입은 원시 타입과 객체 타입으로 분류 할 수 있다. 원시타입: 숫자, 문자열, 불리언, undefined, null, symbol 객체타입: 객체, 함수, 배열 등6-1 숫자 타입 숫자 타입의 값은 배정밀도 64비트 부동소수점 형식을 따름. 즉 모든 수를 실수로 처리하고 정수만 표현하기 위한 데이터 타입은 존재 하지 않음 // 숫자타입은 모두 실수로 처리된다. console.log(1 === 1.0); // true 숫자 타입은 추가적으로 세 가지 특별한 값도 포함한다. Infinity : 양의 무한대 -Infinity : 음의 무한대 NaN (not a number) : 산술 연산 불가 6-2 문자열 타입 문자..