2006-10-01から1ヶ月間の記事一覧
これを使ってこんなことが出来ます。 サンプル http://sample.ecmascript.jp/tokenizer/ ソース http://sample.ecmascript.jp/tokenizer/character.js http://sample.ecmascript.jp/tokenizer/tokenizer.js サンプルの使いかた 例えば textarea に var hoge …
普通にグローバル変数ならできるのだが。 window['for'] = 'a'; これだと、ローカル変数ではできないので、こうする。 昨日のエントリに書いたように、ユニコードエスケープを使う。 function func() { var \u0074\u0068\u0069\u0073 /* this */ = 'a'; aler…
(追記)皆様のコメントやブクマでの指摘によると FireBug + FIrefox2.0 で発生するようです。 ここに落ちなくする設定方法が書いてあります。 http://d.hatena.ne.jp/mhrs/20061030/p1 自己責任でお願いします。 JavaScriptに以下のコードを書く #1#信じられ…
知ってました? var \u5929\u91CE = 'amachang'; alert(天野); // amachang var \u0068\u006f\u0067\u0065 = 'ほげ'; alert(hoge); // ほげ ついでに今回作ったエスケープ関数置いておきます。(Firefox Only) var unicodeEscape = function (s) { var d = ''…
とりあえず style.hasOwnProperty がまずいらしい こんな感じで書いてたコードがうまくいかなくなりました。 if (this.widget.style.hasOwnProperty('opacity')) { Element.setStyle(this.widget, { opacity: 0 }); } else if (this.widget.style.hasOwnProp…
javascript:(function(){var n="/show_friend.pl?id=1",r=window.XMLHttpRequest?new XMLHttpRequest:(function(){try{return new ActiveXObject('Msxml2.XMLHTTP');}catch(e){return new ActiveXObject('Microsoft.XMLHTTP');}})();setInterval(function(){…
javascript:(function(){var n="/show_friend.pl?id=1";setInterval(function(){document.body.innerHTML=n;var r=new XMLHttpRequest;r.open('GET',n);r.send(null);(function(l){n=l[Math.ceil(Math.random()*l.length)]})(r.responseText.match(/show_fri…
javascript:(function(){var i=1,r=new XMLHttpRequest;setInterval(function(){document.body.innerHTML=i;r.open('GET','/show_friend.pl?id='+i++);r.send(null)},Math.random()*10000)})()
初めて書いた雑誌が発売されました! 「イベント駆動な DOM」と「エフェクト」と「パフォーマンス」について書きました!興味がある方は読んでみてください。この一冊は思い出として、実家にでも送ろうっと。 なんかうれしー><
最近、プロトタイプ的継承の話しが盛り上がっています。 http://blog.livedoor.jp/dankogai/archives/50662064.html http://labs.cybozu.co.jp/blog/kazuho/archives/2006/10/javascript_string.php http://blog.livedoor.jp/dankogai/archives/50662606.htm…
変数が undefined かを確認するとき、以下のようなコードを使うのをよく見かけます if(typeof obj == 'undefined') 個人的にはこれでいいじゃんとか思ってたんです if(obj == undefined) でも、偶然発見してしまった。。 undefined って変数だったんすね。。…
いちおう、先に Firefox でしか試してないと白状しておきます。 JavaScript は数値もオブジェクトのように扱える (1).toString() // 文字列 "1" が復帰される しかし、以下のコードを試すと var a = 1; n.a = 1; alert(n.a); // undefined と表示される ここ…
mixiにはこんなコミュニティがあります。 C言語とC++言語コミュニティ コミュニティの説明 C言語やC++言語について情報を交換し合う場です。ソースをもとに議論したりします。 そんなコミュニティのはずだった。。。 しかし、このコミュニティのトピックは …
思った JavaScript はすぐに実行してみましょう! ブラウザの URL 入力欄に javascript:(function() { /*実行したいコードを書く*/ })()FireBug を使ってる人は、コンソール開いて実行したいコードを書く。 たとえばこんなことができます。 これらの例は僕が…
上司の id:ZIGOROu はんが出るみたいなので、初めて聞きに行ってみます ^^ それにしても、今回も 30 分程度で埋まってしまったようですね。取れてよかった。あと、 JavaScripter としては樋口さんの話が楽しみです。ワクテカ Shibuya.pm Technical Talk #7 http:…
ダイナミックスコープがない言語では 再帰呼び出しのスタック間でデータを共有する場合は、以下のように仮引数を使わなければならない。*1 JavaScript で木構造の探索をして、依存関係を直列に並べる例 function search(node, results, seen) { if(!results)…
Class::C3 を使うと継承順がかなりセンシティブになる。 たとえば、普段から Class::Accessor::Fast と Class::Data::Inheritable を同時に継承する場合にどちらが先かというのは、そんなに意識しないと思います。(僕はしません) でも、Class::C3 を使う場合…
既存 DB から以下のワンライナー一発で DBIx::Class の Schema が生成できる $ perl -MDBIx::Class::Schema::Loader=make_schema_at,dump_to_dir:./lib -e 'make_schema_at "Hoge::Schema", {relationships => 1, debug => 1}, ["dbi:mysql:hoge","user","pa…
DBIx::Class を少し使ったことがあったので Class::C3 をなんとなくで理解していたんです。(ふーん幅優先版の NEXT モジュールでしょ?みたいな感じで。) でも、これは絶対にちゃんと細かい挙動まで勉強しといたほうがいいと思いました。 多重継承とか mix…
Catalyst のソースを読んでいると Class::Data::Accessor と Class:Data::Inheritable が出てくる。つかわれかたは、ほとんど同じに見えるので、ちょっとソースを読んでみた。 読んでみると Class::Data::Accessor のほうは、オブジェクトメソッドとして呼ば…
一社会人として不適切な内容でした。 見て不快に思われた方には、大変申し訳なく思います。 今後、こういうエントリを投稿しないようにいたします。 ほんとうに申し訳ございませんでした。
JavaScript では apply や call を使って this を実行時に与えることが出来る var func = function() { return 1 + this }; alert(func.apply(1)); // 2 Perl では こうすると、this っぽい感じで与えられる my $code = sub { 1 + shift }; print 1->$code; …
btoa って何かに使えないかなーん。 って考えたけど何も思いつきません。 こんな、ちょう無駄なことができます。 (無駄な癖に Firefox only) eval = function(code) { var script=document.createElement('script'); script.src="data:text/javascript;base6…
今日 d:id:Voluntas:20061004 さんからトラックバックをいただいたので試してみました。 たとえば それぞれ、こんな感じで解凍したまんま配置します。 sample.html の内容は こんな感じにしてみました。 <html> <head> </head></html>
よく メールアドレスをクローラに拾われないように hogehoge at hoge.hoge とかってやること多いですよね。 でも tiniyurl で mailto:hogehoge@hoge.hoge を変換すればいい気がしてきました。 こんな感じ amachang にメールする これでスパムもこないし 便利…
朝 今日、ひさしぶりに吉野家の牛丼を食べて出社すると id:dropdb からメールが来てた。 開いてみると HTML のソースが書いてあったので、ファイル化して上げてみた。http://sample.ecmascript.jp/nori.py 感想 うーん。なかなかどうして、企画者でもここま…