ぷろぐらみんぐ帳

C#とかJavaScriptとか

JavaScriptの日付計算を(少し)楽にする

JavaScriptで日付計算やったら発狂しそうになったんで、多少楽にする方法を考えた。 C#みたいにAddHours()で時間計算する関数を追加してみた(C#の日付計算も結構地雷あってハマるからあんまり両手を上げて褒められないのがアレ)。 Dateの拡張 Date.prototy…

NaNのみ除外する数値判定

JavaScriptの闇が深い真偽値の話。NaNを含む数値列に対して一括計算するときにどうする?という問題。 isNaN()の場合 NaNのみ判定したければisNaN()という関数がある。ECMAScript 1stから対応。とりあえず評価用に次のようなtest関数を作ってみる。 develope…

linq.jsをVisualStudioで使う

C#に慣れているとJavaScriptでもLINQを使いたくなることがある。linq.js自体の使い方はいろいろ探すと出て来るが、JavaScriptのIDEとしてVisualStudioを使うことができるのでVS内で完結させてみた。IntelliSenseのおかげでほとんどC#と同じような感覚で扱え…

連想配列のJSONをパースする

JSONを扱っているとたまにこのような連想配列の文字列に出くわすことがある。 { "fruits": { "1": { "key": 1, "value": [ "apple", "りんご", 150, "青森県" ] }, "2": { "key": 2, "value": [ "melon", "メロン", 600, "茨城県" ] }, "3": { "key": 3, "va…

任意の文字の繰り返し回数を検出する

特定の文字列の繰り返しを検出したいなら正規表現を使うのが王道だが、繰り返す文字列が任意だと一筋縄にはいかないことがある。例えば、 hogehogeeeeehoggggggge という文字列があったとして、2文字以上連続した箇所とその文字と繰り返し回数を検出したい場…