데이터 타입은 런타임(runtime)에 결정됩니다. 코드를 작성할 때가 아니라, 실제 코드가 실행될 때 데이터 타입이 결정됩니다.
let num1 = 10;
console.log(typeof num1, num1); // number 10
let num2 = 3.14;
console.log(typeof num2, num2); // number 3.14
let num3 = 2.5e5; // 2.5 x 10^5
console.log(typeof num3, num3); // number 250000
let num4 = "Hello" / 2;
console.log(typeof num4, num4); // number NaN(Not a Number)
let num5 = 1 / 0;
console.log(typeof num5, num5); // number Infinity
let num6 = -1 / 0;
console.log(typeof num6, num6); // number -Infinity
문자(문자열 = 문자의 나열) : string
let str = "Hello World!";
console.log(typeof str, str); // string Hello World!
console.log(str.length); // 12
let str1 = "Hello, ";
let str2 = "World!";
let result = str1.concat(str2);
console.log(result); // Hello, World!
let str3 = "Hello, World!";
console.log(str3.substr(7, 5)); // World - 7번째부터 5개까지
console.log(str3.slice(7, 12)); // World - 7번째부터 12번째까지
let str4 = "Hello, World!";
console.log(str4.search("World")); // 7 - World는 7번째부터 시작됨
let str5 = "Hello, World!";
let result01 = str5.replace("World", "Javascript");
console.log(result01); // Hello, Javascript! - World를 Javascript로 대체
let str6 = "apple, banana, kiwi"
let result02 = str6.split(",");
console.log(result02); // [ 'apple', ' banana', ' kiwi' ]
true(참), false(거짓)
let bool1 = true;
let bool2 = false;
console.log(typeof bool1, bool1); // boolean true
console.log(typeof bool2, bool2); // boolean false
un : not, define : 정의하다
let x;
console.log(typeof x, x); // undefined undefined
값이 존대하지 않음을 '명시적'으로 나타내는 방법(일부러 값이 없음을 표현하기 위해 사용)
null !== undefined : null과 undefined는 같지 않다.
let y = null;
console.log(typeof y, y); // object null
key-value pair
let person = {
name: "choi",
age: 20,
isMarried: true,
};
console.log(typeof person, person); // object { name: 'choi', age: 20, isMarried: true }
여러 개의 데이터를 순서대로 저장하는 데이터 타입
let number = [1, 2, 3, 4, 5];
let ftuits = ["apple", "banana", "orange"];
console.log(typeof number, number); // object [ 1, 2, 3, 4, 5 ]
console.log(typeof ftuits, ftuits); // object [ 'apple', 'banana', 'orange' ]