タグ

ブックマーク / constellation.hatenablog.com (4)

  • Let's WeakMap - 枕を欹てて聴く

    ES.nextとして入っていて, ECMAScript 6にも入りそうな気配がするWeakMap. という訳で. WeakMapとは WeakMapとは, harmony:weak_maps [ES Wiki] keyへの参照が弱参照 keyが任意のObject valueはなんでもあり というものです. 弱参照であるため, WeakMapのkeyに指定されたObjectが, weakなreferenceからしか参照されていなかった場合, GCに回収されます. また, WeakMapという名前が隠しがちですが, どちらかと言うと主機能は任意のObjectがkeyとして取れるということでしょう. var map = new WeakMap(); var obj = {}; map[obj] = "OK"; // このとき, toString()されたりしない. Objectをとれる 従来のO

    Let's WeakMap - 枕を欹てて聴く
  • Function.prototype.bindは何がいいのか - 枕を欹てて聴く

    ES5からFunction.prototype.bindが入りました. これに準ずるものは数々のFrameworkで提供され続けてきたので, あまり馴染みの無さはないのではないでしょうか. このFunction.ptototype.bindは実はとても面白いので. 結論から言えば, Function.prototype.bindはtarget functionのConstructに完全に移譲するのでConstructorの引数束縛が行えます. またConstructor callに対して配列を渡すapply形式のものといったapplyConstructorやcallConstructorをbindを使って実装することができます. 基 Function.prototype.bindは基的にはthisとargumentsに特定の値を束縛する関数です. bindは第一引数にthis, 次から

    Function.prototype.bindは何がいいのか - 枕を欹てて聴く
  • Client Side Databaseについて - 枕を欹てて聴く

    あんまり解説なかったのでメモ. iReader作ったときに利用した. 正直今のところSafariしか対応してないから, iPhone/iPod touch専用ページくらいしか使いどころないのですが.HTML5なのでいつかはcross-platformで役に立つことを願いつつ. 仕様 HTML Standard interface Database { void transaction(in SQLTransactionCallback callback, [Optional] in SQLTransactionErrorCallback errorCallback, [Optional] in SQLVoidCallback successCallback); void readTransaction(in SQLTransactionCallback callback, [Optiona

    Client Side Databaseについて - 枕を欹てて聴く
  • Minibuffer からはじめるGreasemonkey Script - 枕を欹てて聴く

    20080406 21:50 キーコードについての説明を追記しました。 Greasemonkeyを使ってる人ならたいていの人が知ってるMinibufferとLDRize(偏見?) ただ、なんというかMinibufferについての説明がMinibuffer 2007.11.15 の変更点 | 3.14とsilog - script/LDRizeの記事くらいしかなく、半ばソース読んで書け状態になってるので結構ハードルが高いのではないかと。 そこで、自分でもDeleteCommand for GreasemonkeyっていうMinibuffer上で動くGreasemonkeyを書いたんだけれど、そのときにわかったこととか、後でMinibuffer用Scriptを書くときの備忘録みたいなのをまとめておく。 これよんでちょっとでもGreasemonkey、またMinibufferに興味持つ人が増えな

    Minibuffer からはじめるGreasemonkey Script - 枕を欹てて聴く
  • 1