m2

2010-03-01から1ヶ月間の記事一覧

indexOf と RegExp の速度比較

単純な特定文字列の存在確認をするのに indexOf と正規表現でどれくらい差があるのかなと思って、次のようなコードを書きました。 (function(){ var a = [], n = 10000; for (var i = 0; i < n; i++) { a.push('item:' + i); } var str = a.join('\n'); var …

JavaScript のコメントを除去

JSのコメント削除って簡単に書けないかなあ。文字列リテラルとか正規表現リテラルまで考えるとなあ。 http://twitter.com/miya2000/status/11177757376 とつぶやいたところ、有志が実装を投げてくれました。 - まずわたし。最初は「正規表現一発でいけるんじ…

CharsetEncoder

文字列とバイト配列を相互に変換する CharsetEncoder という JavaScript ライブラリを書きました。 GitHub - miya2000/CharsetEncoder: JavaScript charset encode/decode library. お試し用のスクリプト。 (function(){ var later = 0; if (!window.__tests…

選択文字列を取得

Opera 10.50 で document.selection が使えなくなったので window.getSelection も使うように書いてみました。 alert( (function f(w){ var d=w.document,q,t,i=0,r=d.selection,s=r&&(r.createRange()||i).text; if(!r){ s=w.getSelection()+'',q=s||d.quer…

ByteArray.js

(function(){ var acme = {}; if (this.acme == null) this.acme = acme; /// ---------------------- /// /// !!! acme.ByteArray !!! /// /// ---------------------- /// acme.ByteArray = function ByteArray(n) { if (!(this instanceof ByteArray)) re…

ソースコードは上から下に読みたいよね。

function Child() { this.name = "child"; this.favorite = "popsicle"; } (function(methods) { methods.apply/*to*/(Child.prototype); }) (function() { this.jump = function() { alert("Jumps, jump, jumpoo!!"); }; this.sayOwnFavorite = function() …

live connect は無くなるのかな

LiveConnect は、JavaScript から Java クラスなどのメソッドを呼べる機能を既存の Java の機能を利用して提供するアプリケーション作成用のインターフェースの名称です。 https://developer.mozilla.org/ja/LiveConnect 他の参考リンク https://developer.m…