데이터 타입은 크게 두 가지로 나누어 볼 수 있는데 그것은 바로
원시 타입 (primitive type)과 객체 타입 (object type)이다
// 산술 연산 (arithmetic operators)
1 + 2; // 더하기
3 - 4; // 빼기
5 * 6; // 곱하기
7 / 8; // 실수 나누기
14 % 3; // 나머지
2 ** 3; // 거듭제곱
// 비교 연산 (comparison operators)
1 < 2; // 작다
3 > 4; // 크다
5 <= 5; // 작거나 같다
6 >= 7; // 크거나 같다
8 === 8; // 같다
8 !== 9; // 같지 않다
// number 타입에 대해 위와 같은 연산자(operator)를 사용해 연산을 할 수 있다.
const name = '열공하자'; // (O)
const name = "열공하자"; // (O)
const name = '틀렸다"; // (X)
const name = "틀렸다'; // (X)
const name = 'a'; //하나의 문자
const chang = 'chang'; // 두개 이상의 문자로 이루어진 문자열
const meeting = 'hello' + chang; // string끼리의 +연산이 가능
null은 명시적으로 값이 없음을 나타낸다. 코드에서는 null로 표현되며, 자바스크립트는 case-sensitive하므로 null은 Null과 NULL이랑은 다르다.
함수가 호출되었을 때 값을 반환할 수 없을 때 null을 반환하기도 한다.
값이 null 인지 확인할 때는 일치 연산자(===)를 꼭 사용하여야 한다.
let myName = null;
console.log(typeof myName === null); // false
console.log(myName === null); // true
undefined은 변수를 선언하고 값을 할당하지 않으면 자동으로 들어가는 값이다.
어떤 변수를 만들고 그 값을 정의해 주지 않았을 때나 존재하지 않는 객체 프로퍼티에 접근할 경우 undefined가 반환된다.
undefined는 단어의 의미 그대로 정의되지 않음이라는 뜻이며 값이 대입되지 않은 상태를 위해 많이 사용한다.
null이라는 값은 undefined와 다르게 의도적으로 값이 없음을 표현하고 싶을 때 대입해 주곤 한다.
객체는 데이터와 그 데이터에 관련한 동작(절차, 방법, 기능)을 모두 포함할 수 있는 개념적 존재이다. 달리 말해, Property와 Method를 포함할 수 있는 독립적 주체이다.
JavaScript는 객체 기반의 스크립트 언어로써 JavaScript를 이루고 있는 거의 모든 것이 객체이다.
원시 타입을 제외한 나머지 값들(배열, 함수, 정규표현식 등)은 모두 객체이다. 또한 객체는 참조에 의한 전달 (pass-by-reference)방식으로 전달된다.
📚💡 지금 배우고 있는 위의 타입들과 각종 연산자, 객체와 함수까지,
이제까지의 공부와는 완전히 다른(?) 방식의 공부이지만,
이렇게 지식을 정리하고 쌓아가는 것에 재미와 의미를 두면서 앞으로
더 자세히 파고들어야겠다고 느꼈다.📝 나의 부족함과 초조함이 풍족함과 여유로움으로 바뀔 때 까지 TIL 하자
ㅁㄴㅇ