なんだかGoodVibes

日々の勉強メモです。

Node.js

【Node】非同期の継続渡しスタイルでのエラー処理

こんにちは。 今回は、コールバックを使った 非同期の継続渡しスタイルでエラー処理を行うサンプルです。 概要 コード まとめ 概要 ファイルを非同期で読み込みサンプルです。 使用するのは非同期でファイルを読み込むreadFileです。 コード const fs = requ…

C#・Node・VBAでビット演算

以前、C#でのビット演算を紹介したのですが NodeやVBAでもやってみましたので 比較してみました。 C#でのビット演算は以下の記事でもう少し詳しく紹介しています。 nandakagoodvibes.hatenablog.com 論理積 論理和 排他的論理和 数値を2進数で取得する まと…

【Node】setTimeoutを使ってみる

こんにちは。 今日は、setTimeoutを使ってみます。 概要 setTimeoutを使っていないバージョン setTimeoutを使ったバージョン まとめ 概要 コンソール出力するサンプルを setTimeoutを使っていないバージョンと setTimeoutを使ったバージョンで作成します。 s…

【Node】モジュールの作り方(exports)

こんにちは。 本日はexportsを使用した 自作のモジュールの作り方をご紹介します。 概要 log.js app.js まとめ 概要 ログ表示に関するモジュールを作成してみる。 ファイルは以下の2つを用意。 log.js : モジュールにする処理を記載 app.js : モジュールを使…

【Node】Markdown変換ツール(markdown-it)

こんにちは。 本日は、Markdown変換ツールの作成です。 概要 サンプルソース app.js index.ejs まとめ 概要 以下の3つのパーツでできています。 入力エリア 変換ボタン Markdownエリア 入力フォームにMarkdownの記法でテキストを入力し、 変換ボタンを押すと…

【Node】MarkdownをPDFに変換する(markdown-pdf)

こんにちは。 本日はMarkdownをPDFに変換する方法です。 概要 方法1(fsモジュールを使用する) 方法2(fsモジュールを使用しない) まとめ 概要 Markdownファイルを指定してPDFに変換します。 本記事では2つの方法を記載します。 どちらの方法でもmarkdown-pdf…

【Node】トップディレクトリ配下のファイル検索

勉強用メモです。 本日は、トップディレクトリから 配下の全てのファイルとサイズを検索して テキストに出力するサンプルです。 勉強のため、非同期で行っています。 概要 サンプル まとめ 概要 サンプルは以下の関数で構成されています。 main メイン処理で…

【Node】ファイルから指定文字が含まれる行を抽出する

こんにちは。 結構便利なのでメモです。 概要 サンプル まとめ 概要 指定したファイルで特定の文字が含まれている行を 抽出して新規のテキストに出力します。 サンプルでは、直接ファイル名・文字を指定して .txtに出力していますが、用途に応じてアレンジで…

【Node】MYSQL操作の基本(ページネーション)

本日はページネーションの利用。 各ページへのリンクを作成してみます。 概要 app.js index.js index.ejs まとめ 概要 データを表示するページの下部に 最初・最後・次のページ・前のページへの リンクを作成します。 '/'アクセス時は1ページ目を表示し リン…

【Node】MYSQLの操作(Bookshelf)

前回、MYSQLを操作する記事を上げました。 でも、正直あれってめんどくさいですよね。 今回は、もっと便利なBookshelfをご紹介します。 前回の記事は以下です。 nandakagoodvibes.hatenablog.com Bookshelfって何? サンプルについて app.js index.js 共通設…

【Node】MYSQL操作の基本(CRUD)

今回は前回の続き。 基本的な操作を行ってみましょう。 nandakagoodvibes.hatenablog.com 概要 INDEX(トップページ) ALLSHOW(すべてのレコードを表示する) CREATE(新規に作成する) READ(指定したIDの情報を表示) UPDATE(レコードの更新) DELETE(レコードの削…

【Node】MYSQL操作の基本(データベースへの接続)

こんにちは。 本日はMYSQL操作の基本メモです。 概要 ソースの構成 ソースの紹介 app.js index.ejs 概要 MYSQLの基本。 MYSQLと接続して、対象のテーブルから全データを取得する。 ソースの構成 -- app.js -- public -- style.css -- views -- index.ejs ソ…

【Node】バリデーション

メモです。 バリデーションを使ってみたので手順と基本をメモ。 概要 モジュールのインストール ソース app.js style.css index.ejs index.js 概要 バリデーションは入力された値のチェックを行う機能。 今回はExpress Validatorを使用する。 入力項目は、名…

【Node】複数ページの作成(クエリパラメータ、フォーム)

こんにちは。 本日は複数のページを作成する方法です。 今回はあえてExpress Generatorを使わずに作成します。 Express Generatorは以下の記事で紹介しています。 nandakagoodvibes.hatenablog.com では、見ていきましょう。 概要 フォルダ構成 各ソースの説…

【Node】標準入力

標準入力の方法をメモです。 2つの方法を記載します。 process.argvを使う readlineを使う process.argvを使う console.log(process.argv); 以下のように引数を指定して実行すると $node sample.js aaa bbb ccc 結果は以下のようになります。 node(実行ファ…

【Node】sliceとsplice

あけましておめでとうございます。 2020年最初の記事は、配列の一部を取得するメソッドです。 配列の一部を取得するメソッドは sliceとspliceがありますね。 似ているようで異なるもの。 2つのメソッドの違いを紹介します。 slice splice slice 使い方は、.s…

【Node】コンソールでカウントダウン

大晦日ということで、ちょっとしたお遊びです。 コンソールにカウントダウンを表示するサンプルです。 さっそく、サンプルです。 var readline = require('readline'); function display(num) { return new Promise((resolve, reject) => { setTimeout(() =>…

【Node】エクセルに書き込む(ループで回して書き込み)

こんにちは。 前回の続きです。 今回は、前回の内容を応用して書き込みを行います。 前回の内容はこちらを参考に。 nandakagoodvibes.hatenablog.com 今回使用するエクセルは前回と同じです。 では、サンプルです。 var xlsx = require('xlsx'); var book = …

【Node】エクセルを読み込む(ループで回して読み込み)

こんにちは。 今回もエクセル関連です。 今回はループを使った読み込みを行ってみます。 読み込むエクセルはこんな感じ。 いつもと変わらない内容です。 今回もxlsxモジュールを使っていきます。 では、さっそくサンプルです。 var xlsx = require('xlsx'); …

【Node】エクセルに書き込む

今回は、前回の続き。 エクセルへの書き込みを行ってみます。 読み込みは以下の記事。 nandakagoodvibes.hatenablog.com では、さっそくサンプル。 使用するエクセルは読み込みで使用したものです。 // xlsxモジュールの読み込み var xlsx = require('xlsx')…

【Node】エクセルの中身を読み込む

今回は、Nodeでエクセルの中身を読み込んでみます。 今回使用するのはxlsxモジュールです。 インストールしていない場合は、インストールしてください。 $ npm install xlsx --save 読み込むエクセルは、ソースファイルと同じ階層においてあるものとします。…

【Node】他のファイルの中身を1行ずつ出力する

こんにちは。今回は、ファイルの中身を1行ずつ詠み込んで出力するサンプルです。 では、さっそくサンプルです。 for を使用 ファイルの中身を読み込み、改行で分割して配列に格納しています。 そして、for を使用して、配列の長さ分ループを回しています。 v…

【Node】ファイル操作の基本

こんにちは。 今日は覚えておくべきファイル操作の基本のサンプルを書きます。 ファイル操作のモジュール 指定されたパス内のファイルを取得する ファイルの存在チェック ファイルの読み込み ファイルの作成・書き込み(上書き) ファイルの書き込み(追記) フ…

【Express入門】Express Generatorの利用

忘れそうなのでメモ。 Express Generator とは? Expressのアプリケーションを生成するツールです。 このツールでアプリを作成すると基本部分が自動生成されるので 必要なファイルを追加していくような形になっている。 作成の手順 [手順1]:Express Generat…

【Express入門】パーシャルの利用

こんにちは。今日はパーシャルの利用です。 パーシャルとは、テンプレートの一部を部品化して 後の変更をやりやすくすることです。 紹介するサンプルは以下です。 スタイルシートの紹介は今回も省略します。 sample.js(メインファイル) index.ejs(表示用ファ…

【Express入門】Body Parserを使ってみる

フォームを作るときにとっても便利。 Body Parserを使ってみます。 まずは、インストールから。 npm install --save body-parser インストールが完了したら早速サンプルです。 今回も以下のファイルを作成します。 - index.js - index.ejs - style.css フォ…

【Express入門】複数のページを作ってみる

今日も引き続きExpressです。 今回は2つのページを遷移するサンプルです。 作成するのは以下のファイルです。 - index.js - index.ejs - style.css Expressを使用する際は 表示用のファイル(ejs等)は「views」フォルダの下に格納。 外部に公開されるファイ…

【Express入門】初めてのExpress

今回は初めてExpressを使ってみたので、メモです。 まずは、準備。 $npm init 最初に、初期化を行います。 各設定がありますので、各々設定を行ってください。 $npm install --save express Expressのインストールを行います。 プロジェクトのルートディレク…

管理ツール npm について

Node.jsを勉強する上で必要なnpmについてメモです。 npm とは Node Package Manager です。 つまり、Node.jsのパッケージ管理ツールです。 npm でインストールしたパッケージのバージョン情報は package.json に格納されます。 では、実際の使い方について説…

ルーティングについて

ルーティングとは どのアドレスにアクセスしたら、どのような内容を表示するか といったことを定義するための仕組みです。 例えば、クライアントが ”/” にアクセスしたらAを返す。 クライアントが "other" にアクセスしたらBを返すといったことです。 JavaSc…