js

javascriptのprototype拡張はどこまで許されるか

js

孫引きなんだけどちょっと気になった点404 Blog Not Found:javascript - es2pi はじめました http://blog.livedoor.jp/dankogai/archives/51859796.html 本来の JavaScript の利用方法(Prototype 拡張)に立ち返り、Array.prototype, String.prototype, Numbe…

最近のJSの開発環境について知っておくべきライブラリ10個

js

ほんとに10個だと思った?(無意味に煽っていくスタイル)最近JSだけのリポジトリで無益なゲームを大量に作っては破棄しているのだけど、割とストレスなく出来上がってきたので書く。長々と書くが、要は次のリポジトリに概要が詰まってる。 mizchi/mizchi_cl…

JSのMVCについて考えてみた ~ その2 テンプレートエンジンの分業とパフォーマンス

この前の続き。相変わらず思いつきでつらつら書いてて図とかまともなサンプルとかない。 JSのモデルには二種類ある フロントエンドである以上本質的にすべてビューだとも言える。 であるがゆえにあやふやにしないほうがいい。 ビューモデル UIの状態を示す属…

sinon.jsのuseFakeTimersを使った時間制御とvowsを使う際の書き方

js

nodeで時間依存なテストコードを書きたい場合、偽のタイマーを使って時間制御する サンプル読んで本当にそんなことができんのかい、と疑問だったので、最小コードだけで挙動だけ確認したメモいれる npm install sinon 偽のタイマーを使う >sinon = require("…

Canvasで巨大な画像をアニメーションする際はImageに埋め込んで保存しておく

概要 canvas画面外にあるものはレンダリングしない コストが高い画像を生成したならimg.src = canva.toDataURL()で突っ込んどく encahnt.jsやeasel.jsのコードを読んでいたら似たような仕組みがあったので参考にした。 (enchant.js、call,applyを多用してい…

Ubuntu+nginxでnode.js+npmのインストールからデプロイまで

js

作業ログ。あんまり日本語でまとまってなかったので。 Apacheが稼働しているサーバーで何度も試行錯誤したくなかったのでnginxを入れた。nodejsとnginxは相性がいいらしい。 Heroku等でもホスティングしてるようだが、あえて自鯖で動かしてみる。 # githubか…

HTML5でローカルストレージ

ドメインとヒモ付けしてDBを共有してる、らしい。 モダンなブラウザなら大体動く ※ なんとなくprototype.js前提だけど、適当に読み替えてください。 localStorage localStorageに直接書いてもいいけど、どうせなので JSONをシリアライズして保存する。 Data …

prototype.js v1.6以降の継承

js

宣言が結構変わってた。 Prototype.js を使った JavaScript OOP 講座 #01 - IT戦記 が古くなってる。 方針 Object.extend() じゃなくて $superを使いましょう。 prototypeには極力触れない。prototype.jsに任せる。 Point = Class.create({ initialize:funct…