【Node.js入門】requireの使い方とモジュールの作り方まとめ!

今回は、Node.jsで別ファイルのモジュールを読み込むことができる「require」について解説していきます!

「requireってどんなことができるの?」
「Node.jsで別のJSファイルを読み込む方法が知りたい」
「モジュールってどうやって作るの?」

このような疑問も含めて、本記事では以下のような内容で解説していきます!

【基礎】「require」とは?
【基礎】「require」の使い方
【実践】「require」の仕組み

この記事で、requireをしっかり学習してスキルアップを目指していきましょう!

「require」とは?

まず最初に、「require」について基本的な知識から身に付けていきましょう!

requireは、モジュール化されたJSファイルをNode.jsから効率よく読み込んで利用できるようにしてくれます。

このことからも分かるように、Node.jsにはモジュールという仕組みが備わっているのでファイルを自由に分割しやすいわけです。

ファイルを分割することでコードが整理しやすいだけでなく、モジュールをパッケージにして配布することで誰でも便利な機能を拡張できるのが特徴です。

本記事では、これらのエコシステムを実現しているのがrequireについて学習していきます。

「require」の使い方

この章では、「require」の基本的な使い方について見ていきましょう!

一般的な書き方や実際のモジュールを読み込む方法について学んでいきます。

基本的な構文と書き方について

まずは、もっとも基本となるrequireの書き方について見ていきましょう。

一般的にrequireを使うケースというのは、パッケージを利用する時か別ファイルのモジュールを読み込む時が多いでしょう。

これらのパッケージ名やファイルのパスをrequireの引数へ指定するだけで利用することができます!

var 変数 = require(パッケージ名)

var 変数 = require(モジュールのファイルパス)

requireを実行して変数へ代入することで利用できるようになります。

これは簡単に言うと、JavaScriptにおけるインスタンス化の感覚に近いものがありますね。

Node.jsのモジュールを読み込んでみる

それでは、実際にrequireを使ったサンプルを見てみましょう!

例えば、npmを使って「express」のパッケージを次のようにインストールしたとします。

$ npm install express

すると、Node.jsではrequireを使って読み込む必要があるわけです。

var express = require('express');

これで、変数「express」を使ってフレームワークを利用することができます。

また、自作のファイルや別ファイルのモジュールを読み込む場合は次のようにファイルパスを指定します。

var sample = require('./sample.js');

このようにパスをrequireの引数へ設定すれば、モジュールを読み込んで使うことができます。

「require」の仕組み

この章では、requireをさらに詳しく見ていきましょう!

主に、簡単なモジュールを作成してrequireで読み込むまでを学んでいきます。

exportsでファイルをモジュール化する

まずは、Node.jsで提供されているモジュールの仕組みがどのようになっているのかを見ていきましょう!

基本的に、ファイルをモジュール化して別のファイルから読み込めるようにするには「exports」を使います。

つまり、他のファイルから利用したいデータをすべてexportsで設定するというわけです。

次のサンプル例を「sample.js」というファイル名で保存しましょう!

var item = 'リンゴ';
var getName = function() {
  console.log(item + "です");
}
var obj = {
  name: 'メロン',
  price: 500,
  store: '東京店舗'
}

exports.item = item;
exports.getName = getName();
exports.obj = obj;

この例では、単純な変数「item」と関数「getName」、オブジェクト「obj」を作成しています。

そして、それぞれのデータを別のファイルからも利用できるように「exports」しているのが分かりますね。

これにより、読み込み先のファイルでrequireすることでデータを再利用できるというわけです。

requireでパスを指定してファイルを読み込む

先ほど作成したファイル「sample.js」を実際にrequireを使って読み込んでみましょう!

var sample = require('./sample.js');

このようにファイル名のパスをrequireの引数へ指定すればOKです!

以降は変数「sample」を使ってモジュールのデータにアクセスすることができるようになります。

次のサンプル例を見てください!

console.log(sample.item);
sample.getName;
console.log(sample.obj);

実行結果

リンゴ
リンゴです
{ name: 'メロン', price: 500, store: '東京店舗' }

それぞれ「sample.js」でexportsした変数や関数・オブジェクトが取得できているのが分かりますね。

基本的にはパッケージ化されているファイルも構造自体はだいたい同じ仕組みになっています。

このように柔軟な仕組みが提供されているため、Node.jsでは簡単に機能を拡張できるパッケージが多数配布されているのです。

まとめ

今回は、Node.jsからモジュールを簡単に読み込める「require」について学習しました!

最後に、もう一度ポイントをおさらいしておきましょう!

・requireはパッケージや別ファイルのモジュールを読み込める
・モジュールは別ファイルから利用したいデータをexportsする
・requireはexportsされたデータを利用できるようにしてくれる

上記内容を踏まえて、ぜひ自分でもプログラミングに取り入れて活用できるように頑張りましょう!

LINEで送る
Pocket

ITエンジニアへ転職したい方におすすめ

自分を評価してくれる企業に転職して年収を上げたい! 自分のスキルにあった独自案件を知りたい!
エンジニアは今もっとも注目されている職業の1つ。エンジニアになって年収を増やしたい方や、あなたのスキルに見合った企業へ転職したいエンジニアの方も多いですよね。

しかし、大手の転職媒体は扱う求人数が多くても、誰もが登録しているので競争率もかなり高くなっています。そのため、あなたの条件に見合った企業を見つけても転職するためには、相応の努力とスキルが必要となります。

こういった媒体では、未経験からエンジニアを目指す方やエンジニア歴2〜3年で転職を考えている方にとって、最適な転職環境とはいえません。

そこでオススメしたいのが、未経験者や若手エンジニア向けの独自案件を多く掲載している「侍ワークス」です。

侍ワークスは、独自案件を多く掲載しているだけでなく、

・応募から就業まで一貫したサポート

・就業後もアフターフォロー

といった経験の浅い方や初めてエンジニアを目指す方にも安心のフォロー体制が整っています。もちろん登録は完全無料!しかも案件を見るだけなら登録も不要です。

まずは、お気軽にどんな求人があるか見てみてください。あなたにピッタリの企業がきっと見つかりますよ! 侍ワークスの求人情報を見る

書いた人

マサト

マサト

フリーランスのIT系ライターを8年従事。侍ブログ編集部としては、これまで270記事以上の記事を執筆。
独学でJavaScript, Node.js, Linuxを3年学習。個人プロダクトのWebメディア・アプリ作成経験あり。