-- 자바 스크립트의 기본
-- 브라우저에는 자바스크립트 엔진이 내장되어 있다.
-- 함수(매써드) 기반 객체지향 언어입니다.
-- 2015년을 기준으로 문법에 큰 변화가 있었다.
-- 2015년 이전 문법을 ES5라고 한다.
-- 2015년 이후 문법을 ES6라고 한다.
-- 동적타입 언어입니다. int String 이런 거 없다고 보면 됨
-- script태그에서 동작합니다.
<script type="text/javascript" src="호출할 자바스크립트 파일명. js"></script>

1. 변수

2. 데이터타입
-- 동적타입이라서 변화가 가능하지만 기본적으로 타입을 가지고 있다.
--자바와 동일함
-- undefined 변수선언은 이루어졌으나 초기값지정을 하지 않은 경우 자동저장됩니다.
-- null 값은 저장했지만 값이 존재하지 않는 경우에 나타납니다.


3. 연산자
--자바와 동일함

4. 배열
자바 스크립트의 배열은 대괄호로 묶습니다.- 리스트라고 보면 됩니다.
자바와 다른 점으로 하나의 배열에 여러 타입이 저장 가능합니다.
자바에서의 배열과 마찬가지로 매써드 사용합니다.
인덱스 기반으로 저장, 출력합니다.
https://developer.mozilla.org/en-US/docs/Web/JavaScript
JavaScript | MDN
JavaScript (JS) is a lightweight interpreted (or just-in-time compiled) programming language with first-class functions. While it is most well-known as the scripting language for Web pages, many non-browser environments also use it, such as Node.js, Apache
developer.mozilla.org
js공식문서임

5. 제어문
-- 자바와 동일함


6. 함수 (매서드)
A. 선언적 함수 (일반함수)
--js는 함수기반의 언어입니다. 주로 함수문법이 쓰임
-- 매서드 선언과 다르게 반환타입 선언이 없습니다.
-- 자바에서는 매서드 선언 후 매써드 사용이 가능했지만,
js에서는 함수선언 전에 미리 호출이 가능하고 이를 호이스팅이라고 합니다.


B. 익명함수
-- 변수에 함수를 지정하여 사용이 가능함
-- 익명함수는 호이스팅이 불가능함

C. 즉시 실행 함수
-- 함수 생성과 동시에 실행하여 return을 받아오거나 실행되는 방식

D. 화살표 함수 (람다식)
ES6이므로 당장은 다루지 않는다고 함

E. Closure
-- 함수 선언부에 가까운 변수를 참조가능한 특성이다.
-- js만의 독특한 문법으로 이해하기 다소 힘들었다.
-- 중괄호 바깥에서 지역변수참조를 하기 위한 방법임

