1、ノードごと
-
Node.jsのは何ですか
Node.jsのは、JavaScriptベースのChromeV8エンジンの動作環境です。Node.jsのは(Node.jsのは、高い同時プロジェクトを扱うことができます)、それは軽量かつ効率的に、イベント駆動型、非ブロックI / Oモデルを使用しています
- なぜ学ぶのNode.js
- フロントエンドエンジニアのバックエンドは、優れたフロントエンドではないわけではありません。
- 多くのツールは、書き込みに使用されるフロントエンドノードのある、あなたはNode.jsのことを学ばなければならないこれらのツールを書きたいです。
- ノードは、バックエンドの言語であるサーバーを作成することができます。
- ノードは、ノードは、デスクトップアプリケーションを作成することができ、非常に低レベルのインタフェースを呼び出すことができます。
- ノードは、オペレーティングシステムを書くことができます。
- Node.jsのインストール
- インストールパッケージダウンロードする公式サイト http://nodejs.cn/を
- インストールが完了したら、それは自動的に環境変数を設定します、あなたはそれらのいずれかのディレクトリノードのコマンドにアクセスすることができます
- コンソール出力ノードにバージョン番号を表示する-v
- バージョンカテゴリ:大型バージョン小さなバージョンのパッチバージョン番号(奇数バージョンは、一般に不安定バージョン、テストのバージョン、さらにバージョンで安定したバージョン)
- LTS版最新バージョンの現在の長期使用
- 説明するために一般的に使用されるコマンド
- 現在のすべてのファイルディレクトリのDIR一覧
- 指定されたディレクトリにcd
- CD。カレントディレクトリに
- 親ディレクトリのCDに..
- フォルダを作成するには、MDディレクトリ名
- フォルダを削除するには、RDディレクトリ名
- CD。>ファイル名の拡張子は、フォルダを作成するには
- CLS画面クリア
- 出口(CTRL + C)を終了し、コマンドライン
- プロセスとスレッド
- プロセスの概念
- リソース割り当てとスケジューリングシステムの基本的な単位は、基礎となるオペレーティング・システム構造である(我々はプロセスおよび手順は、内側にあることのコードを書く工場作業場の等価)
- プログラムを実行しているプロセスのために必要な環境を提供します(タスクバー上で右クリック - > [タスクマネージャ] - > [プロセス)
- スレッドの概念
- コンピュータの最小単位は、プログラム処理(ワークショップにおける作業者の操作に相当する)を実現する責任を負います
- スレッド:JSタイムスライスによって分離された、シングルスレッドであります
- マルチスレッド:タスクに応じて、いくつかのスレッドを開くことを決定し
- ノードサーバー:シングルスレッドが、非常に強い、バックグラウンドI / Oスレッドプールのスケジュール(分散サーバの展開を)持っています
- プロセスの概念
2、簡単なHello Worldのを書くためのNode.jsを使って
- ダウンロードVisual Studioのコードのプラグインストアプラグインターミナル 、このエフェクトプラグインは、コードエディタで直接ターミナルを開くことができる効果を見ながら、端末を実行している間、あなたはコードを書くことができます。
- Node.jsのJavaScriptランタイム環境になる方法
- コマンドラインcmdを開きます
- 入力ノードコマンドは、ノードの環境に入るには、JSのコードを書くことができます
- 長押し二回CTRL + C(.exit)出口ノードの動作環境
- Node.jsのあるJavaScriptのランタイム環境は、ブラウザがあり、両方とも違いは何ですか、JavaScriptのランタイム環境?
- 動作環境は、ブラウザのセキュリティメカニズムで、達成することができず、他のブラウザのDOMオブジェクトは、BOMを識別することができ、ファイルやディレクトリを作成し、インターフェイスファイルの一番下を呼び出すことはできません。
- Node.jsのは、インターフェイスファイルの一番下を呼び出すことができ、あなたはファイルやディレクトリを作成することができ、Node.jsのは、DOMとBOMの概念ではありません。
- サーバーノードを設定します
- ノードのプロジェクトディレクトリを作成します。
- JSファイルを作成します。
- :(で、カタログにCDの方法を実行JSファイルを実行します.jsファイルノードファイル名のようなノードapp.jsとして実行)
- グローバルオブジェクトノード
- console.logのsetTimeoutのsetIntervalてclearInterval
た時間= 0 ; た H =たsetInterval(()=> { 時間 + = 2 ; console.log( `$ {時間}秒passed`を持っています) もし(時間> 5 ){ clearInterval(タイマー) } }、2000)。
- __dirname(現在のファイルの出力ディレクトリ)
- __filename(現在のファイルの出力の絶対パス)LSができます
- console.logのsetTimeoutのsetIntervalてclearInterval
-
- 輸出を必要とする等
3、Node.jsの開発はモジュラーを必要とします
- モジュラーが表示されます
- プログラムはある程度の規模に設計されている場合、それはモジュラーでなければならない、モジュラーは多くの形態をとることが、すべてのメカニズムを提供することができ、複数のソースコードファイルに分けることができます。(彼は、サーバー側の開発を必要としなかったので、フロントエンドあまり必要性は、何のモジュラー開発が考えを扱うことができませんでした)。
- モジュラーメリット:グローバル変数の汚染を防止するために後半の機能的独立性、管理のしやすさとメンテナンス;
- CommonJSの仕様
- CommonJSの規範は、主にJavaScriptをなし標準モジュラー欠陥を補うために、提案されています。
- CommonJSモジュール式の標準(規格)で、Node.jsのはCommonJSの実装(requireJS AMDの仕様)です。
- CommonJS定義モジュール:モジュールリファレンス必要(「パス」)二つ、三つ定義モジュール、モジュール識別子
- ファイルの観点から、JSファイルの各モジュールは、構造的な観点から、複数のJSファイルは、全体としてモジュールである共通の特徴を達成するために、互いの間に必要とするかもしれません。
- Node.jsの中、一つのモジュール定義された変数、関数、等、専用ファイル内に効果的である;それは、外部JSファイル参照変数から必要である場合、関数、マスト輸出が露出される、ユーザの参照により必要
- モジュールリファレンス
- ノードでは、1のjsファイルがモジュールです。
- 露出モジュールの関数や変数、必要な輸出キーワードは、単に輸出の属性として設定することができ、外部変数やメソッドにさらされる必要があります
- ノード内でのモジュールに外部導入する()関数を必要とし、外部モジュールの導入がする追加。それとも...
- プライベートグローバル変数:一つのモジュール内の変数および関数は、他のモジュール(AIMにアクセスすることができないので、ノードにおいて、各JSファイルJSコードは、むしろグローバルスコープよりも、小さな閉鎖に独立して実行されます、およびグローバルな汚染を防ぐため)
- モジュールの識別
- CONST sumJs =(「./和」)を必要とする:例えば、我々は)外部モジュールに導入された、識別モジュールが使用され、我々は、モジュールがモジュール識別子によって指定された見つけることができる(必要に使用する場合
- 分類モジュール
- (組み込みモジュール)コアモジュール:エンジンとnode_modules、モジュールノードは、識別モジュールを提供:HTTP、クエリ文字列、FS、URL、イベント、パス、グローバル...
- ファイル・モジュール(カスタムモジュール):ユーザ作成モジュール、識別モジュール:パス(絶対パス、相対パス)ファイル、モジュールまたはモジュールmodule.exportsはが露出する使用。
- レベルのモジュール(サードパーティモジュール):下層はC ++、識別モジュールによって調製:EJS発現、監督、チェリオ...、使用に先立って、インストールする必要がcnpm / NPM I --saveモジュール名
- モジュラー演習
- CD。> sum.jsはsum.jsファイルを作成し、総和関数sumと変数を定義パイ
// 二つの数との和の関数包装 関数SUM(A、B)を{ // テンプレート列ES6の使用 リターン `要素TWOのSUMはIS $ {A + B}` } constの PI = 3.14 // 外国人がオブジェクトを公開module.exportsは、PIの合計は、右の彼の結合、合計であり、PIの値は彼です // 最初の方法の module.exports.sum = SUM module.exports.pi = PI;
- CD。> app.jsはapp.jsファイルや使用関数と変数sum.js内部の内部を作成します
constの sumJs =(必要' ./sumを' ) console.log(sumJs.sum(1、6 )) console.log(sumJs.pi)
- 第二:
module.exportsは= { 私は パイ:パイ }
- 第三の直接のデータのエクスポート
module.exportsは= { 合計:関数(a、b)は{ // テンプレート文字列のES6の使用 リターンを `要素TWOのSUMは、IS $ {A + B}` }、 PI:3.14 }
- 結果は以下のとおりです。
二つの要素の合計がある 7 3.14
- CD。> sum.jsはsum.jsファイルを作成し、総和関数sumと変数を定義パイ
- Node.jsの分析をファイル
- 場合ノードコードモジュールの実行中に、その最初のコードの最上部に、次のコード機能を追加(輸出、必要、モジュール、__filename、__dirname){
- コードの下部に、追加}
- したがって、モジュールのコードは、パッケージング機能で実行しながら行わ5つの引数関数に渡しています
- 輸出とmodule.exportsは違い
- 輸出は、内部変数が外側に露出する構文、例えばexports.xxx = XXX .;
- module.exportsはいずれかの文法により、直接オブジェクトに割り当てることができる、例えばmodule.exports.xxx = XXX; module.exportsは= {XXX:YYY} .;
図4に示すように、パッケージおよびパッケージマネージャ
- パッケージ
- パッケージマネージャ(NPM)
- NPMパッケージ管理ライブラリノードはまた、ウェブサイト、またはコマンドです。
5、問題が発生しました
ノー