Panda Noir

JavaScript の限界を究めるブログでした。最近はいろんな分野を幅広めに書いてます。

2019-04-01から1ヶ月間の記事一覧

jQueryでむりやりFluxをするとどうなるのか?

結論: 非常に辛い。なぜならFluxの恩恵はコンポーネント化によってもたらされるから。 jQueryのコードが汚くてつらい こちらをご覧ください。jQueryで作ったカンタンなアプリのコードになります。 <title>jQuery</title> <script src="https://pandanoir.net/js/jquery.slim.min.js"></script> <script src="socket.io/socket.io.js"></script> <script> jQuery($ => { const socket = io(); l…

WebSocketでカンタンなゲームを作った

火をつけて消えないように薪を足し続けるだけのゲームを作りました。サイトに接続している人なら誰でも薪を足したり、火をおこせます。 http://ws.pandanoir.net/ WebSocket通信をどう使っているか WebSocketは一度確立したコネクションを切断しないでそのま…

なぜrequire('lodash/zipWith')で関数ひとつだけ読み込めるのか

lodashというユーティリティライブラリがあります。lodashは便利な関数をたくさん提供しています。たとえば配列をシャッフルするshuffle()や、配列の差をとるdifference()などが挙げられます。 lodashは300個以上の関数を提供しています。しかし、実際に使う…

気がついたらimmerが独自クラスのインスタンスもサポートしていた

immerという、ミュータブルな操作を書く感覚でイミュータブルな操作が行えるライブラリがあります。 import {produce} from 'immer'; // 破壊的に配列をシャッフルする関数 const shuffle=(a,i=a.length,j) => {for(;[a[i],a[j]]=[a[j=0|Math.random()*i],a[…