ES5, ES6, javascript 및 nodejs의 관계

nodejs를 배우다 보면 자연스럽게 javascript라고 생각하고 혼동하기도 하는데 사실 ES5와 ES6는 표준일 뿐이고 javascript는 ES의 구체적인 구현체입니다.
JavaScript는 Netscape에 의해 만들어졌으며 1996년 11월 이 언어가 국제 표준이 될 수 있기를 바라며 표준화 기관인 ECMA에 JavaScript를 제출하기로 결정했습니다. 그 후 ECMA가 출시한 JavaScript는 ECMAScript, 줄여서 ES라고 불렸습니다.

1. ECMAScript와 JavaScript의 관계

ECMAScript와 JavaScript의 관계는 전자가 후자의 사양이고 후자는 전자의 구현이라는 것입니다.

2. ES5와 ES6

ES5는 ECMAScript의 다섯 번째 버전이고, ES6은 ECMAScript의 여섯 번째 버전입니다.

3、Node.js

Node.js는 JavaScript용 서버 런타임입니다. ES6에 대한 지원이 더 높습니다.

처음에는 여기서 혼란스러운 질문이 있을 수 있습니다.
1. Node.js는 javascript의 실행 환경으로, 우리의 일반적인 클라이언트와 마찬가지로 js 작성 시 파일을 조작할 수 없고, 조작 파일을 읽고 쓸 수 없으며, js에서 다른 js 파일을 참조할 수 없습니다. 클라이언트 브라우저에 따라 제한 사항도 보안 고려사항이므로 동일한 자바스크립트 언어라도 실행 중인 플랫폼과 컨테이너가 이러한 인터페이스와 메서드를 제공하는지 여부에 따라 핵심이 달라집니다. 서버에 그런 제한이 없으면 파일을 조작하는 방법이 더 많아지고, JS를 서로 다른 모듈에 별도로 작성하여 서로 참조할 수도 있고, 동일한 nodejs로 데이터베이스를 운영하는 등의 작업도 가능합니다. 따라서 역시 javascript이지만 확장 방법이 다릅니다.
우리 클라이언트의 자바스크립트에는 일반적으로 ECMAScript+DOM+BOM이 포함되어 있습니다.

ECMAScript(语言基础,如:语法、数据类型结构以及一些内置对象)
DOM(一些操作页面元素的方法)
BOM(一些操作浏览器的方法)

그리고 nodejs에는 ECMAScript+OS+FILE+NET+DATABASE 등이 포함됩니다.

ECMAScript(语言基础,如:语法、数据类型结构以及一些内置对象)
os(操作系统)
file(文件系统)
net(网络系统)
database(数据库)

프론트엔드와 백엔드 js의 경우 언어 기반이 ECMAScript이지만 확장하는 것이 다릅니다. 프론트엔드에서는 페이지 요소를 작동해야 하므로 DOM이 확장되고 브라우저도 다음과 같은 작업을 수행해야 합니다. 작동되므로 BOM이 확장됩니다. 서버사이드 js도 서버에서 요구하는 일부 API를 확장하기 위해 ECMAScript를 기반으로 하고 있는데, 백그라운드 언어에는 시스템을 동작시키는 능력이 있으므로 OS를 확장하려면 파일을 동작시키는 능력이 필요하므로 파일 시스템을 확장해야 합니다. 네트워크를 운영하기 때문에 네트워크 시스템을 확장하려면 데이터를 조작해야 하므로 데이터베이스의 성능 확장이 필요합니다.

2. 그렇다면 nodejs는 javascript를 실행하는 서버사이드 환경인데 ES5 표준을 지원하는 걸까요, 아니면 ES6 표준을 지원하는 걸까요.. 사실 테스트 결과 새 버전의 nodejs는 sync 등 ES6의 일부 작성 방법을 지원하는 것으로 나타났습니다. 기다려서 지도, 설정 등을 하세요.

おすすめ

転載: blog.csdn.net/weixin_36557877/article/details/129284966