skillup

技術ブログ

JavaScript

JSでの他ファイル読み込み。requireやimportについて

投稿日:

JavaScriptに関して、知識が非常に古い段階で止まっているのでコツコツとアップデートをしております。

今回はrequireやimportなど、他のファイルの読み込みについてです。

PHPなどサーバーサイドの言語を使っている場合、ファイルを適切に分けて、モジュール化しておくことが一般的です。

こうすることで

  • コードが読みやすくなる
  • 機能ごとにファイルを分割できる(保守性、再利用性の向上)
  • 名前空間の汚染を防ぐ

などのメリットがあります。これがないと一つのファイルに全ての処理を詰め込むことになりますので、コードが非常に見にくいですね。

が、JavaScript関連は仕様が錯綜しており、情報を整理するのが結構大変です。

自分なりにファイルの読み込みをまとめてみました。

require

サンプルコード

https://github.com/umanari145/front_end_javascript/tree/master/require

  • 元々はRequireJSというモジュール管理の仕様。
  • 現在ではnodeJSで一般的に使われる手法。
  • ブラウザから読み込むタイプのJavaScriptではコンパイルしないと無理。(生で使えない)

参考リンク

RequireJS使い方メモ

importとrequireどちらを使おう…。

Node.jsのexportsについて

import

サンプルコード

https://github.com/umanari145/front_end_javascript/tree/master/import

  • ECMAScriptから使えるようになった書き方。
  • コンパイルなしで読み込むことが可能(開発環境を整えるのは思った以上に大変なので、このメリットは大きい気がする。)

いまどきなフロントエンド開発者になる!JSのモジュール管理ってこういうこと

Webpack を使わずに import 文を使う

ES6のExportとImportについて

 

-JavaScript
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

PHP(DBアクセス)→HTML→Angularを実行するために

AngularJSでデータベースをつかうときには$httpや$resourceを使うことが多いですが、それ以前にAngularを読み込んでデータベースにアクセスしないことも重要かと思っています。 とい …

no image

ejsのテンプレート

普段生のHTMLを書く機会はほとんどなく、画面側の仕事でもフレームワークを使うことがほとんどなので搭載されているテンプレートを使っています。 で、生のHTML/CSSの本を読んでいてejsなるテンプレ …

no image

AngularJSでのinfite_scroll

今回もAngularネタです。 一般的なデータの一覧画面ではページャーをボタンで移動するのではなく、スクロールするだけで次々とアクセスできるようになるのが一般的でしょう。 facebookやtwitt …

no image

jQuery子要素の取得方法など

jQueryで要素を取得する方法って$(“セレクタ”)しか知らなかったんですが、他にもいろいろあることがわかったのでちょっと紹介。 例えばtrの列の中に横1列に<inpu …

no image

Angularでのfilter

今回はAnuglarでよく使うfilterという機能です。 使いどころとしては入力フォームに対応させて表示項目を絞る、みたいな使い方が一般的かと思います。 一番簡単なものとしては配列があり、入力値にあ …