株式会社NextCodeのロゴ株式会社NextCode

BLOG

ブログ

2021/04/23

JavaScriptに種類?CommonJSとECMAScript

概要

早速ですが、JavaScriptに種類が存在していた事を知っていましたか?

タイトルにも記載していますが、「CommonJS」と「ECMAScript」といった2種類が主にあります。

普段使っているJavaScriptはどっちで、どういった違いがあるのか、について見ていこうと思います!

CommonJSとECMAScriptの違い

普段使っているJavaScriptはどれかを先に説明したい所なのですが、まずは違いが分からないとどちらを使用しているかが分かりません。

その為、先に違いを説明致します!

JavaScriptを書いている時に、次のような「import」や「require」といったワードを見た事ないでしょうか?

import defaultExport from "module-name";
const module = require( module-name );

このimportやrequireは、モジュールといった別のJSファイルを読み込んでいます。

この「import」と「require」がCommonJSとECMAScriptの違いとなってきます。

require = CommonJS

import = ECMAScript

となります。

そして、CommonJSで書かれたJSは、ChromeやSafariなどのブラウザで動きません。

逆にECMAScriptは動きます。

ハッキリと分かる違いとしては、上記2点となります。

普段使っているJavaScriptはどっち?

違いを見てもらうと、すぐに分かってしまうのですが、ブラウザで動いているものは「ECMAScript」になるのでWEBプログラミングをされている方なら、「ECMAScript」を普段お使いになれていると思われます。

では、「CommonJS」はどういった時に使うの?

CommonJSは「Node.js」といったサーバー側で動くJavaScriptの時に使用します。

「Node.js」はサーバーサイドになってくるので、PHPといった言語と同じ位置にきます。

JavaScriptという一つの言語でPHPの部分も担う事ができるのが大きなメリットです。

ECMAScriptについて

CommonJSについてはNode.jsで動く物なんだな〜という認識で良いのですが、ECMAScriptに関してはもう少し詳細を話しておきます。

過去のJavaScriptはブラウザ毎に異なった書き方をしていました。

ブラウザを開発している会社が独自の拡張をしていった為です。

その為、同じJavaScriptという言語でも色々な書き方が存在していたのです。

それを統一する為に出来たのが、ECMAScriptという準拠です。

その準拠を公開した時にバージョンがアップしていってます。

次のような感じです。

バージョン公開日
ECMAScript11997年6月
ECMAScript21998年6月
ECMAScript31999年12月
ECMAScript4放棄
ECMAScript52009年12月
ECMAScript5.12011年6月
ECMAScript6(2015)2015年6月
ECMAScript7(2016)2016年6月
ECMAScript8(2017)2017年6月
ECMAScript9(2018)2018年6月
ECMAScript10(2019)2019年6月
ECMAScript1011(2020)2020年6月

現在はECMAScript6(2015)が標準のようです。

なので、ブラウザで動くJavaScriptを記述する際は、ECMAScript6(2015)を使用しましょう!

以上になります。

詳しく知りたいという方は下記サイトをご覧下さい。

参考サイト

https://qiita.com/minato-naka/items/39ecc285d1e37226a283

https://qiita.com/minato-naka/items/73b9d531c871d98a3f22

TOPへ移動
PAGE
TOP
%d人のブロガーが「いいね」をつけました。