1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

転職黙示録 (3) JavaScriptのために1ミリもHTMLを書きたくない人のためのNode.js

Last updated at Posted at 2019-09-11

HTML書くのめんどくさい

 「よしJavaScriptをやるぞ|と思ってもいざコードを書くとなるとHTMLが必要です. VSCodeならhtmlと打ち込むとボイラープレートが生成できます. ここにscriptタグを足してやればブラウザのコンソールで入力を確認したりできます.

index.html
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <script type="text/javascript" src="./index.js"></script>
    <title>Document</title>
</head>

<body>

</body>

</html>

 もちろんできますが面倒です. ブラウザを開く必要もあります. そこでNode.jsの出番です.

Node.jsって何?

 公式ページによると以下のような説明がされています.

Node.js はスケーラブルなネットワークアプリケーションを構築するために設計された非同期型のイベント駆動の JavaScript環境です.

 よし分からん. サーバーサイドJavaScriptなどとも言われますが, JavaScriptを普通のプログラミング言語のように動かせる実行環境だと思えばいいです. サーバーというのはつまるところコンピュータのことですから. つまりNode.jsはJavaScriptをコマンド・ラインで実行できるわけです.1 ブラウザに閉じ込められていたJavaScriptの真の力が発揮されるわけです. Node.jsの導入の仕方などはネットで検索してください.2

Node.jsでHello, World!

index.js
console.log("Hello, World!");
node index.js
# Hello, World!

 簡単ですね? JavaScriptという言語を試したいけど一ミリもDOMとかWindowとか使わんしHTMLのボイラープレート書くのめんどくさい, そんな感じで心が折れているあなたはNode.jsで解決です:point_up:3

付録

コード・サンプル

 とりあえずNoe.js環境を整備して以下を実行してみよう!

const pets = ["🐱", "🐶", "🐷"];
const newPets = ["🐮", ...pets];
console.log(newPets);

const hasCat = newPets.includes("🐱");
if (hasCat) {
    console.log(`animals includes ${newPets[0]}`);
}

ブラウザ環境との違い

windowは存在しないのでglobalというのが代わりになるようです.

function noWindow() {
    if (this === global) {
        console.log("windowは存在しません");
    }
}

noWindow();

 またconsole.logで関数名だけを渡しても文字列にはならないのでtoStringで文字列に変換する必要があります.

function MyFunc() {
    return "定義は見えてますか?";
}
console.log(MyFunc.toString());
  1. 当然ですがDOMなどはその対象となるHTMLがないので使えません.

  2. 私はnodenvを入れています.

  3. つまり私のことです.

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?