목록스터디 (75)
seunghyun Note
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/mL5gy/btsDaxk4ylq/JxKOGsthIqynPrCXIKj2Fk/img.png)
9.1 타입 변환이란? 자바스크립트의 모든 값은 타입이 있다. 값의 타입은 개발자의 의도에 따라 다른 타입으로 변환할 수 있다. 개 명시적 타입 변환(타입 캐스팅) : 개발자가 의도적으로 값의 타입을 변환하는 것 var x = 10; //명시적 타입 변환 //숫자를 문자열로 바꾸기 var str = x.toString(); 암묵적 타입 변환(타입 강제 변환) var x = 10; //암묵적 타입 변환 var str = x+ ''; 자신이 작성한 코드에서 암묵적 타입 변환이 발생하는지, 발생한다면 어떤 타입의 어떤 값으로 변환되는지, ... 타입 변환 결과를 예측하지 못하거나 예측이 결과와 일치하지 않는다면 오류를 생상할 가능성이 높다. 9.2 암묵적 타입 변환 // 피연산자가 모두 문자열 타입이어야 하는..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bkIZM7/btsC9a4WblP/PK1YkyL9xgJK271Gtyhp2K/img.png)
제어문은 조건에 따라 코드 블록을 실행하거나 반복 실행할 때 사용한다. 8.1 블록문 // 블록문 { var foo = 10; } // 제어문 var x = 1; if (x 0) { kind = '양수'; // 음수를 구별할 수 없다 } console.log(kind); // 양수 // if...else 문 if (num > 0) { kind = '양수'; } else { ki..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/MTCNN/btsC83xX07b/aQN3s8Q9KN65ufcQJ5JKyk/img.png)
연산자는 하나 이상의 표현식을 대상으로 산술, 할당, 비교, 논리, 타입 , 지수 연산 등을 수행해 하나의 값을 만든다. (연산의 대상을 피연산자) // 산술 연산자 5 * 4 // -> 20 // 문자열 연결 연산자 'My name is ' + 'Lee' // -> 'My name is Lee' // 할당 연산자 color = 'red' // -> ' red' // 비교 연산자 3 > 5 // -> false // 타입 연산자 typeof 'Hi' // -> string 7.1 산술 연산자 수학적 계산을 수행해 새로운 숫자 값을 만든다. NaN 반환한다. 7.1.1 이항 산술 연산자 이항 산술 연산자 의미 부수 효과 + 덧셈 X - 뺄셈 X * 곱셈 X / 나눗셈 X % 나머지 X 5 + 2; // -..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/vmILu/btsC4d2Uzty/jts5sPsrrB3MsLDk78bZ9k/img.png)
데이터 타입 숫자 타입의 값 : 1 !== 타입의 값 : '1' 구분 데이터 타입 설명 원시 타입 숫자 타입 숫자, 정수와 실수 구분 없이 하나의 숫자 타입만 존재 문자열 타입 문자열 불리언 타입 논리적 참(true)와 거짓(false) undefined 타입 var 키워드로 선언된 변수에 암묵적으로 할당되는 값 null 타입 값이 없다는 것을 의도적으로 명시할 때 사용하는 값 심벌 타입 ES6에서 추가된 7번째 타입 객체 타입 객체, 함수, 배열 등 6.1 숫자 타입 C나 java의 경우 숫자도 int, long, float, double 등 과 같은 다양한 숫자 타입을 제공한다. 하지만 자바스크립트는 독특하게 하나의 숫자 타입만 존재한다. ECMAScript 사양에 따르면 숫자 타입의 값은 배정밀도 ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/c89uFE/btsC9aqj3HU/5NPVvJ423TRLkM2jfC6pyK/img.png)
개념을 이해한다는 것은 바로 용어를 정확히 이해하고 설명할 수 있다. 5.1 값 값은 식이 평가되어 생성된 결과이다. //10 + 20 은 평가되어 숫자 값 30을 생성한다. 10 + 20 ; //30 모든 값은 데이터 타입을 가지며, 메모리에 2진수, 즉 비트의 나열로 저장 변수 : 하나의 값을 저장하기 위해 확보한 메모리 공간 자체 또는 그 메모리 공간을 식별하기 위해 붙인 이름 // 변수에는 10 + 20이 평가되어 생성된 숫자 값 30이 할당된다. var sum = 10 + 20; 5.2 리터널 리터럴을 사람이 이해할 수 있는 문자 또는 약속된 기호를 사용해 값을 생성하는 표기법을 말한다. //숫자 리터럴 3 3 리터럴을 사용하면 다음과 같이 다양한 종류의 값을 생성 리터럴 예시 비고 정수 리터럴..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/IgD6V/btsC4cprdud/rm0mjzHmijzMShhlZxagkk/img.png)
4.1 변수란 무엇인가? 왜 필요한가? 이제 제대로 시작~! 다음과 같은 자바스크립트 코드를 실행한다고 가정하자. 10 + 20; 자바스크립트 엔진은 위 코드를 계산(평가.evaluation)하려면 먼저 10, 20, +라는 기호(리터럴.literal과 연산자.operator)의 의미를 알고 있어야 하며, 10 + 20이라는 식(표현식.expression)의 의미도 해석(파싱.parsing)할 수 있어야 한다. 자바스크립트 엔진이 연산자와 피연산자를 기억하고 CPU를 통해 연산, 메모리를 사용해 데이터를 기억한다. 다음은 위 코드가 실행되었을 때의 메모리 예시이다. 컴퓨터는 CPU를 사용해 연산하고, 메모리를 사용해 데이터를 기억한다. 모든것들이 2진수로 처리가 된다. 메모리 주소를 통해 값에 직접 접근..