🍁자료형
JavaScript에서 자료형은 메모리를 따지지 않는다.
JavaScript는 Java보다 훨씬 단순한 자료형을 가지고 있다.
number
- 숫자형(정수, 실수)
var num;
num = 10;
var num2 = 3.14;
var num3, num4;
var num5 = 10, num6 = 20;
string
- 문자/문자열
var name1 = 'Isaac';
var name2 = "Isaac";
선언을 할 때 홑따옴표와 큰따옴표 둘 다 사용할 수 있다.
boolean
- 논리형
var flag = true;
object
- 객체형
var now = new Date();
JavaScript에는 클래스가 없지만 객체 개념은 있다. 그리고 JavaScript에는 이미 만들어진 클래스의 객체가 있다.
이 말은 이미 만들어진 것은 사용할 수 있으나 개발자가 직접 클래스를 생성할 수 없다는 것을 의미한다.
이 때문에 자바는 객체 지향 프로그래밍 언어, 자바스크립트는 객체 기반 프로그래밍 언어라고 부른다.
기타 (상수)
a. null
b. undefined
c. Nan(not a number)
🍁변수, 상수(리터럴)
var
var 변수명;
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
var num;
num = 10;
var num2 = 3.14;
var num3, num4;
var num5 = 10, num6 = 20; //숫자형
var name = "Isaac"; //문자형
var flag = true; //논리형
var now = new Date(); //객체형
console.log(typeof 100); //number
console.log(typeof 3.14); //number
console.log(typeof num); //number
console.log(typeof 'Isaac'); //string
console.log(typeof "Isaac"); //string
console.log(typeof name); //string
console.log(typeof true); //boolean
conesole.log(typeof new Date()); //object
</script>
</body>
</html>
선언한 뒤에 초기화해도 되고, 선언과 동시에 초기화해도 된다. 또한 그룹 선언도 가능하다.
자바스크립트는 자료형은 존재하지만, 변수의 타입이 없다.
변수는 모든 자료형의 데이터를 저장할 수 있다는 점에서 자바의 오브젝트 클래스 변수와 비슷하다. 배열도 마찬가지로 var로 선언한다.
자바스크립트는 접근성은 좋지만, 이러한 특징 때문에 어떤 내용이 들어있는지 유추하기 어렵다.
그래서 JavaScript에 자료형을 엄격하게 관리하는 TypeScript를 만들었다. Type이 추가된 JavaScript이므로 TypeScript라고 부른다.
연산자
자바와 동일하다.
제어문
자바와 동일하다.
문자 이스케이프
console.log('C:\class\java'); //X
console.log('C:\\class\\java');
자바와 동일하다.
Week Type 언어
console.log('10' + 2); //102
console.log('10' * 2); //20
console.log(2 + '10'); //210
Java는 Strong Type 언어이고, SQL과 JavaScript는 Week Type 언어이다.