requireとimportの違い

この記事はMojirageアドベントカレンダーの3日目の記事です。
matatsuna.hatenablog.com

node書いてるとよく一番上に書いてあるパッケージの読み込みをするやつがrequireとimportです。

require

node自体がサポートしてるパッケージの読み込み方(厳密にはCommonJSの仕様)

import

ES6の仕様で新しいパッケージの読み込み方(babelを使う必要あり)

個人的にはimportを使ってます。どっちがいいかは宗派みたいな話になるので、両方使ってみて好きな方でいいかと。

requireとimportの書き方の違い

読み込み

require
var hoge = require('hoge');
var hoge = require('hoge').hoge;
import
import hoge from 'hoge';
import {hoge} from 'hoge';

エクスポート

require
module.exports = hoge;
exports.hoge = hoge;
import
export default hoge;
export{ hoge };