JavaScript(자바스크립트)란?
- 객체(Object) 기반의 스트립트 언어이다.
- *HTML로 웹의 내용을 작성하고, *CSS로 웹을 디자인하며 자바스크립트로 웹의 동작을 구현한다.
자바스크립트 주로 웹 브라우저에서 사용되나, *Node.js와 같은 프레임워크를 사용하면 서버 측 프로그래밍에서도 사용할 수 있다.
- 현재 컴퓨터나 스마트폰 등에 포함된 대부분의 웹 브라우저에는 자바스크립트 인터프리터가 내장되어 있다.
- 동적이며, 타입을 명시할 필요가 없는 인터프리터 언어이다.
JAVA 와 JavaScript
- 문법상 비슷한 이유는 두 언어 모두 C 언어를 기반으로 만들어졌기 때문이다.
- JAVA : 컴파일 언어, 타입 검사를 엄격하게 함(string, int...), 클래스(class) 기반의 객체 지향 언어
- JavaScript : 인터프리터 언어, 타입 명시 x , 프로토타입(prototype) 기반의 객체 지향 언어
자바스크립트 표준
- ECMAScript는 자바스크립트뿐만 아니라 마이크로소프트의 JSscript나 어도비의 액션스크립트도 따르는 국제 표준이다.
- 현재 자바스크립트의 최신 표준은 2015년에 발표된 ECMAScript 6이다.
*HTML(Hyper Text Markup Language)란?
- 웹 페이지를 위한 마크업 언어. 프로그래밍 언어가 아닌 마크업 언어이다.
- 웹 브라우저 위에서 동작하는 언어이다.
- 포맷 : .htm, html
- 예시
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>여기는 타이틀입니다.</title>
</head>
<body>
<p>치킨먹고싶다</p>
</body>
</html>
* CSS(Cascading Style Sheets) 란?
- HTML, XHTML, XML 같은 문서의 스타일을 꾸밀 때 사용하는 스타일 시트 언어.
- 배경색을 입히거나 버튼 색을 바꾸거나 폰트 스타일을 바꾼다던가 등등.
* Node.js 란?
- Chrome V8 JavaScript 엔진으로 빌드된 JavaScript 런타임(환경)이다.
( 여러 OS 환경에서 실행할 수 있는 환경을 제공하게 된다.)
- 이벤트 기반, 논 블로킹 I/O 모델을 사용해 가볍고 효율적이다.
(논 블로킹 I/O 모델 : I/O 작업이 진행되는 동안 유저 프로세스의 작업을 중단시키지 않는 방식)
- Node.js의 패키지 생태계인 npm은 세계에서 가장 큰 오픈 소스 라이브러리 생태계이기도 하다.
- JavaScript를 서버에서도 사용할 수 있다.
- 서버사이드 스크립트 언어가 아니다. 프로그램(환경)이다.
(서버 사이드 스크립트 언어 : JSP , ASP , PHP ...)
출처 : http://tcpschool.com/javascript/js_intro_basic
개인공부