UbuntuにNode.jsをインストール
なんか聞いたことはあるけどそれが何なのかは分からない"Node.js"。 拡張子からJavaScriptのファイルみたいですが何がどうなるのか知りません。 なので使ってみることにしました。
OSは"Ubuntu 20.04.2"です。
Node.jsをインストールする
公式を見てみると2021年4月28日現在、14.16.1が推奨版になっていました。 とりあえず公式のインストールページを参考にインストールします。
https://github.com/nodesource/distributions/blob/master/README.md
推奨版が14.16.1なので、“Node.js v14.x:“の項目を端末で実行します。
$ curl -fsSL https://deb.nodesource.com/setup_14.x | sudo -E bash -
$ sudo apt-get install -y nodejs
2つのコマンドを実行するといろいろダウンロードされてインストールされました。
バージョンを確認してみます。
$ node -v
v14.16.1
推奨バージョンがインストールされていました。
インストール中にメッセージが表示されたのですが、コマンドでは"Node.js 14.x"と"npm"がインストールされているようです。
## Run `sudo apt-get install -y nodejs` to install Node.js 14.x and npm
## You may also need development tools to build native addons:
sudo apt-get install gcc g++ make
## To install the Yarn package manager, run:
curl -sL https://dl.yarnpkg.com/debian/pubkey.gpg | gpg --dearmor | sudo tee /usr/share/keyrings/yarnkey.gpg >/dev/null
echo "deb [signed-by=/usr/share/keyrings/yarnkey.gpg] https://dl.yarnpkg.com/debian stable main" | sudo tee /etc/apt/sources.list.d/yarn.list
sudo apt-get update && sudo apt-get install yarn
npmとやらのバージョンも確認してみました。
$ npm -v
6.14.12
メッセージにある開発ツールやYarnパッケージマネージャーは分からないのでインストールしていません。
Node.jsを実行する
そもそもNode.jsが何か分からないので次に何をすればいいのか分かりません。 そこで公式のドキュメントを探してみると「インストール後にNode.jsを開始するには?」というページを見つけたので試してみます。
とりあえず作業用のディレクトリを作ります。
$ mkdir work
$ cd work
ドキュメントの通りJavaScriptapp.js
ファイルを作成します。
const http = require('http');
const hostname = '127.0.0.1';
const port = 3000;
const server = http.createServer((req, res) => {
res.statusCode = 200;
res.setHeader('Content-Type', 'text/plain');
res.end('Hello World');
});
server.listen(port, hostname, () => {
console.log(`Server running at http://${hostname}:${port}/`);
});
端末でJavaScriptファイルを指定してnodeを実行するとWebサーバーが起動します。
$ node app.js
Server running at http://127.0.0.1:3000/
ブラウザでhttp://localhost:3000
を見るとapp.js
ファイルで指定したメッセージが表示されました。
終了させるときは端末でCtrl+C
キーを押します。
端末でnode
とだけ実行すると直接JavaScriptを入力して実行することができます。
>
に続けてJavaScriptを入力します。
終了は最後のメッセージにあるように"Ctrl+C"を2回か、.exit
を入力します。
$ node
Welcome to Node.js v14.16.1.
Type ".help" for more information.
> var a = 100;
undefined
> a * 2.5;
250
> console.log(a);
100
undefined
>
(To exit, press Ctrl+C again or Ctrl+D or type .exit)
>
undefined
と表示されるのは、命令文が結果を返さないから?
この辺の動作はまだよく分かりません。
Node.jsはJavaScriptの実行環境
ここまでで分かったのは、Node.jsはJavaScriptファイルではありませんでした。 Webブラウザではなく、コマンドラインやサーバーで使うJavaScriptの実行環境でした。