자바스크립트에도 데이터 타입이 있다. 데이터 타입에는 원시타입(Primitive type) 과 객체타입( Object/ Reference type)이 있다. 원시타입 - 숫자 -> 정수, 실수 구분없이 하나의 숫자 타입만 존재한다. 배정밀도 64비트 부동소수점으로 해석된다. 즉 모든 수를 실수로 처리한다는 뜻이다. 3 / 2를 하면 1.5로 처리된다는 뜻이다. 숫자 타입에는 추가적으로 Infinity, -Infinity, NaN(Not a Number)가 있다. - 문자열 다른 언어와는 달리 문자열을 생성할 때 ""(큰 따옴표)와 ''(작은 따옴표) 구분 없이 사용할 수 있다. ES6에는 템플릿 리터럴이 추가되었다. 템플릿 리터럴은 멀티라인 문자열, 표현식 삽입, 태그드 템플릿의 기능을 제공한다. 템플릿..
변수란? 기존에 변수란 메모리의 위치를 기억하는 저장소의 이름, 값을 담을 수 있는 그릇이라고 막연하게만 생각해왔다. 하지만 내 생각과 조금은 달랐다. 변수는 하나의 값을 저장하기 위해 확보한 메모리 공간 자체 또는 그 메모리 공간을 식별하기 위해 붙인 이름이다. 조금 더 자세히 알아보자 우리의 뇌는 연산과 기억을 둘다 할 수 있지만, 컴퓨터는 연산(CPU)과 기억(메모리)을 수행하는 부품이 나누어져 있다. 메모리란? -> 데이터를 저장할 수 있는 메모리셀의 집합체이다. 메모리셀 하나의 크기는 1바이트(8bit)이다. 컴퓨터는 1바이트 단위로 데이터를 저장하거나 읽어들인다. 각각의 메모리셀은 고유의 메모리주소를 갖는다. 메모리 공간의 위치 0~메모리 크기 만큼 정수로 표현된다. 예를 들어 4GB메모리는 ..
프로그래밍이란? 문제 해결을 위해서는 문제 상황의 복잡함을 단순하게 분해(Decomposition)하고 자료를 정리하고 구분(modeling)해야하며 순서에 맞게 행위를 배열해야한다. 컴퓨터는 0과1밖에 모르기 때문에 0과 1을 이용해서 직접 프로그램을 작성하기에는 어려운 점이 있다. 그래서 프로그래밍 언어를 사용해서 프로그램을 작성한 후 그것을 컴퓨터가 이해할 수 있도록 변환을 하는 일종의 번역기를 통해서 기계어로 컴퓨터에게 전달해야한다. (컴파일러 or 인터프리터) 자바스크립트는 우선 인터프리터 언어이다. 컴파일러 언어와 인터프리터 언어의 차이는 무엇이 있을까?? (대표적으로 C언어는 컴파일러언어, 자바스크립트는 인터프리터언어이다.) 컴파일러언어 인터프리터언어 코드가 실행되기 전 단계에 소스 코드 전..