JavaScript 타입은(type) 값(value)의 종류를 의미합니다.
정보를 전달하기 위해 JavaScript에서 값(value)을 전달하는데, 값은 다양한 타입으로 분별할 수 있는 고유한 속성과 메서드를 가지고 있습니다.
Number Type는 자바스크립트에서 숫자를 표현하기 위한 Type 입니다.자바스크립트에서 숫자는 정수, 음수, 그리고 실수로 표현이 가능하고 숫자타입인지 확인하기 위해 typeof 연산자를 사용할 수 있습니다
type of 100; //'number' 정수 표현
type of -100; //'number' 음수 표현
type of 100.123; //'number' 실수 표현
산술 연산자를 사용해 사칙연산을 할 수 있습니다
console.log(1 + 2); // 3
console.log(1 - 2); // -1
console.log(1 * 2); // 2
console.log(1 / 2); // 0.5
console.log(9 % 2); // 1 (9를 2로 나눈 나머지 구하기)
Math 내장 객체를 사용해 더 복잡한 계산도 가능합니다. 이것을 Method라고 부릅니다.
Math.floor(100.621); // 100
Math.ceil(100.621); // 101
Math.round(100.621); // 101
Math.round(100.421); // 100
Math.abs(-100); // 100
Math.abs(100); // 100
Math.sqrt(4); // 2
Math.sqrt(2); // 1.4142135623730951
Math.pow(2, 5); // 32
String 타입 또는 문자열은 인간의 언어, 자연어를 자바스크립트에서 표현할 수 있는 데이터 타입 입니다. 작은따움표(''), 큰따옴표(”), 백틱으로 감싸면 String 문자열로 인식이 됩니다. 예를 들면, Number 타입인 1 -> '1'로 감싸면 String로 인식이 됩니다.
또한 백틱을 이용하면 Template Literals라고 해서 더 넓은 기술도 사용이 가능합니다. 참고로 백틱은 줄바꿈도 가능합니다! Template Literals
'자바스크립트'
"JavaScript is the hard"
`HTML`
`JavaScript
is hard`
length 속성을 이용해 문자열의 길이를 볼 수 있습니다.
아래 예제를 보시면, hello의 길이는 'h e l l o' 5 입니다.
const greet = 'hello'
console.log(greet.length) // 5
length 속성을 사용하여 'hello'의 길이를 검색하면 5가 나옵니다. 하지만, 자바스크립트에서 실제 길이는 4로 보시면 됩니다. 이유는, 순서가 0부터 시작하기 때문이지오.
'h e l l o'로 예제로 다시 드리자면, 총 5글자가 있습니다. 글자 하나씩 console.log()에 나오게 하고 싶으면 어떻게 할 수 있을까요?
const greet = 'hello'
console.log(greet[0]) // 'h'
console.log(greet[1]) // 'e'
console.log(greet[2]) // 'l'
console.log(greet[3]) // 'l'
bracket 안에 [숫자]를 입력하여 문자열의 위치를 불러낼 수 있습니다. hello의 첫번째 글자 h를 불러내고 싶다면, [0]이 되겠습니다 그리고 이어서 [1] , [2], [3] 입니다... . ![]
toLowerCase() : 문자열을 소문자로 변경합니다.
toUpperCase() : 문자열을 대문자로 변경합니다.
concat() : 문자열 연결 연산자 +처럼 문자열을 이어 붙일 수 있습니다.
slice() : 문자열의 일부를 자를 수 있습니다.
indexOf() : 문자열 내에 특정 문자나 문자가 몇 번째 위치하는지 확인합니다.
includes() : 문자열 내에 특정 문자나 문자가 포함되어 있는지 확인합니다.
Boolean는 사실 관계를 확인하기 위한 타입입니다. 사실이면 true, 거짓이면 false로 구분이 됩니다.
기본 설정으로 false의 값이 다양하기 때문에 이를 falsy 값으로 부르기도 합니다. truthy 값은 너무 많기 때문에 falsy만 알고 계시고 falsy의 반대라고 알고 계시면 됩니다.
대표적으로
false
0
-0
0n
""
''
``
null
undefined
NaN