lodash を使うと簡単にカリー化できる
lodashのcurryを使うことで簡単に関数をカリー化できます。
const add = (a, b, c) => {return a + b + c;};const curryAdd = _.curry(add);cu ...
JavaScript 関数かどうかをチェックする場合は typeof func === ‘function’
JavaScript では関数の引数に関数を渡せることが強力です。
例えば、以下のような関数をつくることができます。
function hoge(func, str) { func(str);}hoge は引数 ...
JavaScript setTimeout の第三引数について
以下のような関数があるとします。
const log = message => {console.log(message);};setTimeout を使って3秒後にこの関数を実行したいとします。
以下の ...
JavaScript での DOM 操作を関数型プログラミングっぽく書いてみる
以下のようなHTMLがあります。
<div id="parent"> <div name="hoge">aaa</div> <div name=& ...
Chromeでより詳しいネットワークのログを取得する方法
Chromeの開発ツールでは、Network タブで通信の情報を得られますが、より詳しいログを取得する場合はブラウザで chrome://net-export/を開きます。
このような画面が開くので、Start Loggi ...
JavaScript HTMLの子要素に対してループ処理をしたい時の注意点
以下のようなHTMLがあり、id=”parent”の子要素のdivのtextをすべてつなげた文字列を取得したいとします。
<div id="parent"> <div ...
JavaScript カンマ演算子を使うと少しだけコードが少なくなる
以下のようなmyFunc関数があります。
const hoge = () => 'hoge';const foo = () => console.log('foo');const ba ...
JavaScript 数値へ変換する際に単項プラスを使う
JavaScriptで数値以外を数値へ変換するのに Number を使いますが、単項プラス(+)でも同様のことができます。
console.log(Number(10));//10console.log(+10);//10con ...
jQuery $(document).on と $(selector).on の違い
$(document).on は動的に追加されたHTMLに対してもイベントを処理できます。
一方で、$(selector).on は、その時点のHTMLに対してのみ作用します。
以下が例です。
まず ...
JavaScript reverse を使う時は気をつけよう
配列の順序を逆にしたい時は、Array.prototype.reverse が便利です。
しかし、一点注意が必要なことがあります。
以下のように元の配列自体を変化させてしま点です。
const data ...