최초 브라우저에서 실행하기 위해 만들어진 프로그래밍 언어지만 현재는 브라우저, 서버, 모바일 개발이 가능한 멀티 패러다임 프로그래밍 언어다.
혹은 컴퓨터에서 자바스크립트 실행할 수 있는 Node.js라는 런타임을 설치해야 함
해당 값이 어떤 타입인지 확인할 수 있다.
typeof 100 // 'number'
Number는 일상생활에서 흔히 접할 수 있는 숫자를 자바스크립트에서 표현하기 위한 데이터 타입으로 정수(integer)와 실수(float)을 모두 표현할 수 있다.
String(문자열)은 인간의 언어, 자연어를 JavaScript에서 표현하기 위한 데이터 타입이다. 따옴표(’), 쌍따옴표(”), 백틱(`)으로 감싸서 사용한다.
length
속성을 이용하여 문자열의 길이를 확인할 수 있다.
문자열의 각 문자는 순서를 가지고 있으며, 각 문자가 몇 번째에 위치하는지 인덱스(Index)로 확인할 수 있다.
단, 우리가 일상생활에서 순서를 셀 때 1부터 세지만, 첫 번째 인덱스는 0부터 시작하므로 주의해야하며 이를 Zero-vased numbering이라고 한다.
String(문자열)은 인간의 언어, 자연어를 JavaScript에서 표현하기 위한 데이터 타입이다. 따옴표(’), 쌍따옴표(”), 백틱(`)으로 감싸서 사용한다.
같은 숫자 값 간에 간단한 사칙연산을 할 수 있다.
console.log(2+1) // 3
console.log(2-1) // 1
console.log(9/3) // 3
console.log(9*3) // 27
동치연산자는 두 피연산자가 동일하면 true, 그렇지 않으면 false를 반환한다. !==
는 반대로 두 피연산자가 동일하지 않으면 true, 동일하면 false를 반환한다.
===
, !==
: 엄격한 동치 연산자==
, !=
: 느슨한 동치연산자대소 관계 비교 연산자 두 피연산자의 값의 크기를 비교하며. 수학에서의 부등호 기호의 사용법과 유사하다.
>
, <
, >=
, <=
논리합(||)과 논리곱(&&)을 사용하면 복수의 조건을 작성할 수 있다. ||은 여러 조건 중 하나만 true여도 true로 판단하고 &&은 여러 조건 중 하나라도 false이면 false로 판단한다.
부정 연산자는 조건을 부정한다. 조건이 true이면 false를, 조건이 false이면 true를 반환한다.
+
를 사용하여 문자열을 이어붙일 수 있다. 다른 타입과 이어붙이려고 하면 모두 문자열로 변하기 때문에 숫자타입과 + 연산자를 사용할 때는 조심해야 한다.
NaN === NaN 은 false
당연하게 NaN과 NaN을 비교하면 true 라고 생각했지만, 이는 틀렸다. 값은 false로 출력되며 만약, NaN 타입인지 알고싶다면 isNaN()을 사용해야 한다.
데이터의 보관함이자 상황에 따라 변할 수 있는 값으로 보관된 변수를 통해 데이터를 사용 가능하다.
자세한 설명
현대 컴퓨터 구조에 각각의 메모 셀의 크기는 1byte(8bit) 로 표준화되어 있고 각각의 메모리 주소를 가지고 있으다.정확히 표현하면 변수는 이 메모리 셀의 주소를 가르키고 있다.
선언 키워드
let
보관함 확보 ( 선언 )
let age;
보관함에 데이터 저장 ( 할당 )
age = 12;
선언과 할당을 동시에도 가능
let name = 'jungho';
= 의 의미는 같다가 아닌 대입의 의미
만약, 할당이 되지 않았다면 undefined 정의되지 않았다는 메세지 출력
자바스크립트에서 코드 한줄을 표현식이라고 하며, 표현식의 의미를 알아가는 과정을 평가라고 한다.
let radius = 5;
pi * radius * radius;
공백 X , 단어의 첫 글자를 대문자로 써 붙이는 (Camel Case) 를 사용한다.
변수에는 다양한 타입이 존재한다.
숫자(number) = 123
문자열(string) = "Jungho"
불리언(boolean) = true / false
undefined 와 함수도 타입에 속한다.
let fruits = ['banana', 'apple', pineapple'];
let person = {name : 'Ho', age : 23, isStudent : true}
논리적인 일련의 작업을 하는 하나의 단위를 의미함
작은 기능의 단위
function testfunction (num) {
// 함수의 몸통
}