マッスル・メモリー

筋肉エンジニアのブログ

js

【fnm, node.js】fnmを使ってnode.jsをプロジェクトごとに管理する。

js

Dockerを導入していないプロジェクトがある場合にプロジェクトごとにnodeのバージョンを管理したい。 そんな時はfnmを使用する。 fnmとは、Rustで構築された高速でシンプルなNode.jsバージョンマネージャ。クロスプラットフォームのサポート(macOS、Windows…

【js】DOM ノードを追加、置換、削除する

js

ノードの追加、置換、削除についてまとめます。 HTMLの編集には、innerHTMLプロパティを利用することもできますが、今回紹介する方法だと以下のようなメリットがあります。 オブジェクトツリーとして操作できるので、対象となるコンテンツが複雑になった場合…

【js】DOM イベント操作

js

属性値やテキストを取得、設定する方法にについてまとめます。 コードを使用したページ Qiita 特定の属性を取得、設定 不特定の属性を取得 テキストを取得、設定 特定の属性を取得、設定 多くの属性は要素ノードの同名のプロパティとしてアクセスできます。 …

【js 】DOM 文書ツリー間を行き来する ノードウォーキング

js

getElementByIdやquerySelectorAllメソッドはいずれもピンポイントで特定の要素ノード(群)を取得するためのメソッドです。 しかし、いちいち文書全体から目的の要素を検索するのは無駄が多くそれはそのままパフォーマンス低下の原因にもなります。 そこでD…

【js】DOM 要素の検索まとめ

js

DOM(Document Object Model)はHTMLをJavascriptから操作できるようにしたインターフェイスのことです。 JavascriptからはDOM APIを通じてHTMLの情報を取得、変更、イベントの登録などができます。 今回は情報を取得するために要素の検索についてまとめます…

【js】ES6 モジュール

js

ES6から言語としてモジュールがサポートされました。 モジュールとは、関連性を持たせて切り離された一塊のコード群のことです。 モジュールのメリット モジュールを使うことで、以下のようなメリットがあります。 他のコードとの依存性が少なくなるので、変…

【js】ES6 オブジェクトリテラル

js

オブジェクトリテラル ES6ではオブジェクトリテラルの構文もシンプルに表現できるようになりました。 const title = 'この素晴らしい世界に祝福を'; const mainCharacter = 'カズマ'; const Anime = { title: title, mainCharacter: mainCharacter, subTitle…

【js】クラスを定義する

js

ES6からjsでもclassを定義することができるようになりました。 オブジェクト指向に関わる箇所なので、是非マスターしたいところです。 オブジェクト指向については以前記事にまとめてあります。 https://takuma521.hatenablog.com/entry/2019/07/15/214850 …

【js】配列を操作するメソッドまとめ

js

今回は配列を操作するときに便利なメソッドをまとめます! forEach let titles = ['このすば', 'リゼロ', '幼女戦記', 'オバロ'] titles.forEach((title) => { console.log(title); }); // このすば // リゼロ // 幼女戦記 // オバロ function showTitle(tit…

【js】クロージャ

js

クロージャとは、ローカル変数を参照している関数内関数のことです。 なんのこっちゃわからないので、次のコードを見てください。 function countPoint(init) { let point = init; return () => { return ++point; } } let myCounter = countPoint(1); conso…

【js】スコープチェーン

js

jsではスクリプトの実行時に、内部的にGlobalオブジェクト(グローバルオブジェクト)を生成します。 グローバルオブジェクトとは、グローバル変数やグローバル関数を管理するためにjsが自動的に生成する便宜的なオブジェクトなのです。 グローバル変数/関数…

【js】ES6 タグ付きテンプレート文字列

js

テンプレート文字列を利用することで、文字リテラルに変数を埋め込めますが、 変数をそのまま埋め込むのではなく、加工した上で埋め込みたいということもあるでしょう。 例えば、 let subaru = '<strong>スバルくん</strong>' let barusu = '<strong>バルス</strong>' console.log(`${subaru}素…

【js】 引数【ES6】と関数の呼び出し方

js

ES6で追加された関数の引数の記述と関数の呼び出し方についてまとめていきます! 引数 引数のデフォルト値 デフォルト値を使う場合の注意点 デフォルト値が適用される場合されない場合 デフォルト値を持つ仮引数は、引数リストの末尾に 必須の引数を宣言する…

【js】 4種類の関数の定義の仕方

js

Javascriptには関数を定義する方法が4種類あります。 今回はそれらの定義の仕方、特徴についてまとめていきます。 1. function命令で定義する 2. Functionコンストラクター経由で定義する 3. 関数リテラル表現で定義する 4. アロー関数で定義する(ES6) ま…

【js】ES6 分割代入

js

ES6から分割代入というものが導入されました。 分割代入とは、配列/オブジェクトを分解し、配下の要素/プロパティの値を個々の変数に分解するための構文です。 今回は、分割代入の使われ方について説明します! オブジェクト 配列 オブジェクトと配列の組み…

【js】ES6 var, let, constの違い

js

ES6からconst, letが登場しvarは使われなくなりました。 var, const, letの違いは何か? なぜvarは使わないのか? について説明していきます。 var, const, letの違いは何か? 再宣言 再代入 ブロックレベルのスコープ 変数の巻き上げ varを使わない理由 202…