文字列から数字だけを取り出したい [ javascript ]

ソース:'http://aaaa/bbbb/ccccc/1234/dddd/?id=3210'
欲しいのは「id=」の後ろの「3210」

replaceメソッドに後方参照を使っているところだけ残すような形で置き換えて、とかいろいろ試してたけど。これだけでよかったのかよ…

文字列.match(/id=(\d+)/)[1]

node.jsで実験。
> 'http://aaaa/bbbb/ccccc/1234/dddd/?id=3210'.match(/id=(\d+)/)
[ 'id=3210',
  '3210',
  index: 34,
  input: 'http://aaaa/bbbb/ccccc/1234/dddd/?id=3210' ]
> 'http://aaaa/bbbb/ccccc/1234/dddd/?id=3210'.match(/id=(\d+)/)[1]
'3210'
node.jsってこういうのを試行錯誤するときメチャ便利です。

文字列を数値に変換する [ javascript ]

数値を文字列にするのは簡単。

'' + 123 = '123'

じゃあ逆も簡単で数値なコンテキストに文字列を混ぜてやればいいんだと思って、0を足してやってもうまくいかない。

0 + ’123’ = '0123'

文字列の方が強いらしい。
結局、押してだめなら引けばいいということで、

’123’ - 0 = 123

が一番手っ取り早そう。ちなみに、引けば文字列同士でも数値になるOrz

’123’ - '0' = 123

ランダムパスワードジェネレータ [ javascript / jQuery ]

JavascriptとjQueryで書いたランダムパスワードジェネレータ。
使い方は簡単(なはず)。
パスワードに含めたい文字を選択して「Get new password」をクリック。
「l」(小文字のエル)と「1」(数字のいち)など、フォントによって見分けにくいものを判別しやすくするため、色見本通りに色分けして表示するのでご参考に。

ランダムな文字列生成をJavascriptの乱数(Math.random())に頼っていて、その辺がどれだけパスワードの強度に影響しているかは検証できておりませぬ。

checkboxの状態取得 [ jQuery ]

$(セレクタ).val()で取得できたり、$(セレクタ).checked()があったりしないかと思って探したけどイマイチ見つからないと思ったが、やっぱり直接の方法はないらしく、

$(セレクタ).attr("checked")

で取得するのが一番手っ取り早いようだ。
もっとエレガントな方法あるのかな。

配列・連想配列 [ bash ]

配列操作

やりたいこと記述備考
配列を作る配列名=()空の配列ができる
配列を参照する${配列名[インデックス]}普通の変数みたいに「$変数名」という省略形は使えないらしい。
配列の要素を変更する配列名[インデックス]=値
配列全体を取り出す${配列名[@]}中身がズラッと並ぶ
配列に要素を追加する配列名=(${配列名[@]} 追加要素)応用問題?
配列の長さを取得する${#配列名[@]}

連想配列操作

bashのバージョン4以降で使えるようになったらしい。
やりたいこと記述備考
配列を作るdeclare -A 配列名明示的に宣言しないといけないらしい。
配列を参照する${配列名[キー]}
配列の要素を変更する配列名[キー]=値

便利だからとbashばかり使っていると、普通の/bin/shと何がどう違うのかわからなくなるのが困り者?

DOM要素を生成する [ javascript / jQuery ]

知らなかった。
HTMLタグから要素を作りたい時、これで良かったんだ。
$('<table>')

ずっと、

$('<table></table>')

て書いてコードが無用に長くなって嫌だなあ、と思ってました。
サンプルだけじゃなく人のコードも読まんといかんねえ。

javascript - めんどうな作業がわずか1クリックに!新人プログラマーが知らないと一生後悔するブラウザーを使ったHTML生成
いいえ、使いません。
めんどうな作業がわずか数秒に!新人デザイナーが 知らないと一生後悔するExcelを使ったHTML生成 | Webロケッツマガジン
僕たちプログラマーは、ちょっとしたコード生成に、Excelを使います!

僕たちプログラマーは、ちょっとしたHTML生成にDHTMLを使います。

同じ「プログラマー」という言葉だけど、それぞれが違う人種のことをさしているんじゃないかと思いつつ、どちらもいい方法だなあと思いました。

手元にExcelしかなくて一回きりの作業ならExcelを使うし、コレから何回もやる作業なら簡単にコードくんだ方がいいですよねー。

Firefox7以前の版ではlocalStorageをローカルファイルでは使えない [ javascript ]

そういうことだったのか!

そりゃFirebugを入れてトレースしてみてもさっぱりわからんはずだ。

ちょっとしたツールを作っていて、どうしてもFirefoxだけ保存したつもりのデータが読み出せないことを発見。

どうしてだろう、何かブラウザ依存なことをやっているんじゃなかろうかと、小一時間くらい悩んだ挙句に放置したんですよね。。

作ってたツール自体はChromeやOperaでは意図通りにデータを保存してくれることだし、特に困らないので忘れかけていたところに、FirefoxでlocalStorageを使う記事を発見。