javascript
もらいもの。 function oMap(o,f) { if (o == null) return undefined; var r = new o.constructor; for(var k in o) { r[k] = f(o[k]); }; return r; }
おしえてもらったネタだがメモっておく。 javascriptのfor文を高速化する配列の要素をインクリメントする際にこっちより、 for (var i in array) { array[i]++; }以下の方が速いとのこと。 var i; if (array && (i = array.length)) for (; i--; ) { array[i…
ArrayにはmapがあるがObjectというかObjectを利用したhashにはmapがない。 そこでhashを返す関数を作ってみた。 mymap(ハッシュ,関数):返値はハッシュ js> mymap=function(hash,funk){var r=new Object();for(k in hash){r[k]=funk(hash[k])};return r} f…
.bashrcに以下を書く function gosh(){ if [ $# -ge 1 ] && [ $1 == '-e' ]; then echo "$2">$$.scm;shift 2;`which gosh` $$.scm "$@";rm $$.scm; else rlwrap `which gosh` "$@";fi } function runghc(){ if [ $# -ge 1 ] && [ $1 == '-e' ]; then echo "$…
Dir.glob(/*.txt/)と同じコードは new File(".").list(function(n){return null==/.txt/g.exec(n)?false:true}) File.currentDir.list(function(n){return null==/.txt/g.exec(n)?false:true})ファイルの中身を得る(readAll()は配列でかえってくる模様。標準…
spidermonkeyでread,writeしたい。と言う衝動に負けFileオブジェクト込のjavavascript shell (js)をコンパイルする。まず、http://www.ossp.org/pkg/lib/js/ より、ソースをゲットとりあえずはconfigure ./configure --with-utf8 --with-editline4.0 遊んで…
ブックマークレットは開発時に一行で書かなくてはならず、見通しが悪い。 そこで、インデントおよび改行をゆるし、ファイルによりブックマークレットを開発及び管理するために開発されたプログラムがこれ。 使用方法 先頭にmkbkmkを記述したnow.cgiを作成す…
対象文字列.replace(/([0-9a-zA-Z])/g,function (match_str){return String.fromCharCode(match_str.charCodeAt(0) - 65248)})
一行でブックマークレット書くのがいまいちつらいので以下のようなものを作ってみた。 インデントや改行込みでブックマークレットを作った後、cgiが改行とインデントを削除してアンカーを作成する。 #!/usr/bin/ruby title="選択領域数字半角化" program=<<'…
やられた。getMonthは0-11で返ってくるんだ。(http://www.scollabo.com/banban/jsindex/sample/sample_081.html) 平成の日付 javascript:(function(){n=(t=document.getElementsByTagName('textarea')[0]).selectionStart;v=t.value;s=t.scrollTop;t.value=(…
以前もらったもの javascript: var f, i, form; var a, b, n; n=0; a=prompt('Replace regexp...'); if (a != null) b=prompt('...with', a); if (a != null && b != null) { for (f=0; f
javascript:(function(){n=(t=document.getElementsByTagName('textarea')[0]).selectionStart;v=t.value;s=t.scrollTop;t.value=(v.substr(0,n)+(f=[(d=new Date()).getFullYear(),d.getMonth(),d.getDate()].join("/"))+v.substr(n,v.length));t.scrollTop…
練習用に作った。まだアクティブな(もしくはフォーカスのある)テキストエリアを取得する方法がわからない。 javascript:(function(){dt=new Date();d=document.F1.T1;n=d.selectionStart;v=d.value;t=d.scrollTop;d.value=(v.substr(0,n)+(s=dt.getFullYea…
javascriptで再帰無名関数を使う為にはarguments.callee()だ。 js> (function(a){return a!=0?a+arguments.callee(a-1):0})(5) 15 参考URL http://d.hatena.ne.jp/amachang/20061204/1165192033
ちょっとはまったのでメモっておく js> ("0000"+12).substr(-4) 0012こんな関数まで作りそうになった自分が恥ずかしい js> (function(a){b=a.toString();return ("0000"+b).substr(4-b.length,4)})(12) 0012
以下の二つは等価 gosh> (lambda () (print "OK")) #<closure #f> gosh> ((lambda () (print "OK"))) OK #<undef> gosh>js> function(){print("OK")} function () { print("OK"); } js> (function(){print("OK")})(); OKクラス js> function A(){this.a=1;this.b=function(){pri</undef></closure>…
javascript:(function(){d=document.getElementsByTagName('html')[0].innerHTML; t='<form name=f accept-charset=EUC-JP method=post action='ターゲットのURL'><textarea name=n>'+d+'</textarea><input type=submit></form>'; document.write(t); document.f.submit()})();または javascript:{ …
以下をブックマークに追加する javascript:{ d=document.body.innerHTML; t='<form name=f accept-charset=EUC-JP method=post action="対象のURL"><textarea name=n>'+d+'</textarea><input type=submit></form>'; document.write(t); document.f.submit() }
http://www.suepon.com/jsm/script/jsm30.html
http://n9d.n9d.com/ddd/menu.html どうもメニューを作る位置が問題。
/cgi-bin/clickpost.cgi(カロ作) #!/usr/bin/php4 <script> function foo(s){ document.f.a.value=s; document.f.submit(); } </script> <form name=f method=post> <input name=a type=hidden> </form> <a href='javascript:foo("data1")'>test1</a><br>
=POSTするページをローカルのapacheで見える場所にコピー =methodをpostからgetに書き変える =ブラウザに欲しいパラメータを入れてsubmitする。 =アドレスバーの引数(?以下)がポストすべきなデータ =以下のrubyスクリプトにかませば終了 #!/usr/bin/ruby -…