スライドショー

【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

無料でSEからWebエンジニアへ転職しませんか?



侍エンジニア塾では、完全未経験の方から現在SEだけどプログラミングはやっていないという経験者まで、幅広い方々の人生を好転させるプログラミング指導を行ってきました。SEの方とお話していくなかで、

  • システムエンジニアという職業だけどコードが書けない
  • 事務作業が多くスキルがないため将来が不安
  • スクールに通うと完全未経験者と同じスタートになるからレベルが合わない
という、すでに知識があるSEならではのお悩みがあることに気づきました。そんな方におすすめなのが、弊社の「転職コース 」です。

弊社では、マンツーマンでレッスンを行いますので、現在お持ちの知識レベルからカリキュラムを作成いたします。さらにこちらの転職コースは無料で受講を始められて転職成功でそのまま卒業できるというとてもお得なコースとなっています。

既に知識のあるSEといっても転職は年齢が若いほど受かりやすいため、まずは無料体験レッスンで今の現状や理想の働き方について一緒に考えていきましょう。

まずは無料体験レッスンを予約する

書いた人

マサト

マサト

JavaScriptが大好きで、趣味も仕事もJavaScriptを中心に活動していたら、いつの間にかフリーランスになってました。
30代になってからプログラミングを始めた経緯があり、分からないことだらけだった経験を踏まえて、読者に分かりやすい記事制作をモットーにしています。
JavaScript以外の趣味は、旅をしながらの街歩きや登山など。

おすすめコンテンツ

あなたにぴったりなプログラミング学習プランを無料で診断!

プログラミング学習の効率を劇的に上げる学習メソッドを解説