JavaScript
グリモンを書いてて、uniqメソッドを自前で作ろうと思ったのですが、少し面白い方法を見つけたので、jsPerfでベンチマークしてみました。文字列専用ですが。 自前のuniqメソッド オブジェクトを構築する際に、キーはひとつのオブジェクトに対してユニークに…
たらい回し関数(竹内関数)とProcessing.jsを使って塔を建てる。たらい回しの塔 - jsdo.it - share JavaScript, HTML5 and CSSえげつなさが可視化される。 参考 竹内関数 - Wikipedia
土曜日にKyoto.lispに行ってきました。無謀にもスピーカー枠で参加したので、ちょっとドキドキでしたが、話したいことは話せたので良かったです。スライドは以下に置いておきました。よりSchemerフレンドリなJavaScriptへ 感想 Lispの勉強会というのは、東京…
先日、Meteorっていうツールが話題になっていて、いろいろ見てみたんですけど、pjaxいいなぁと思って、今まで実装したことなかったので、Mojolicious::Liteで実装してみました。ついでに流行りっぽいツールを組み合わせてみました。 利用したツール Mojolici…
あくまで富豪的プログラミングが許される時という前提付きですが、関数合成がとても有用だと思うので、記事にしてみます。なお、ソースコードはCoffeeScriptで記述しているので*1、JavaScriptはわかるけど、CoffeeScriptはわからないという方は、適宜、Coffe…
先日、Underscore.jsを弄っていて、なんでも関数化したい病にかかり始めたので、書いてみました。when$when関数の返り値がtrueになっても継続するオプションを設けてもいいかもしれない。 追記 default関数っていうのを定義してましたが、予約語と名前が被る…
JavaScript Advent Calendar 2011 (フレームワークコース) の9日目です。せっかくの機会だったので、ものすごく気になってたけど、触る機会がなかった、Underscore.jsをいろいろと弄ってみました。配列関係の便利メソッドの集合ライブラリなイメージでしたが…
CoffeeScript、食わず嫌いしてたのですが、使ってみると便利で、書いてて楽しいですね。記法が簡潔なので、JavaScriptだとreturn function地獄になるカリー化関数書くのが苦ではなかったので、カリー化関数を書いて遊んでみました。 calc.coffee これがCoffe…
え、今さら?感満載ですけど。配列を結合するメソッドという頭でいましたが、要素を追加して、ついでに要素追加反映後の配列コピーを返すメソッドと考えると結構便利な気がします。Arrayオブジェクトのメソッドは、sortとかreverseとかmapとかfilterとかのよ…
今日は、kanazawa.js v1.2です。もうちょっとしたらしゃべることになるんですけど、大変申し訳ないことに、下書きはなんとか出来上がりつつあるものの、文章を要約して、スライドにまとめる時間はなさそうなので、この記事をプレゼン資料にしちゃうことにし…
JavaScriptに限った話ではないのですが、reduce関数を持つプログラミング言語がいくつかあります。 JavaScriptに関しては、一応、ECMAScript5の仕様に登場するようで、将来的にはどのブラウザでも使えるようになりそうな気配はあります。 Standard ECMA-262 …
最近、実案件で実験していたのですが、仕様が固まってきたのでメモしておきます。JavaScriptを特定のページで実行したいというニーズがあるけれど、head要素内に書くとか、body要素内に書くとか、そのページ限定でscript要素を使って読み込むとかいろんな方…
最近、Wordpress絡みでPHPを書くことが多くて、かつバージョンも5.2だったりするので、高階関数とか無名関数とかが無性に使いたくなります。ということで、JavaScriptでIteratorでも書いて心の平静を保つことにします。 クロージャ版Iterator これが書けるJa…
iPadでプレゼンする時に、ソースが表示できないと不便だという話だったので、散々ガイシュツだけど、iPadでソース表示するためのブックマークレットを作りました。利用技術はJavaScriptオンリーで、シンタックスハイライトは、Google Code Prettifyを使いま…
タイトルなげぇよ。はい。昨日から、明日の昼まで、関西開発合宿に参加しています。頭ん中さんの、関西で開発合宿へ行ってきたよ - 頭ん中っていうエントリーが前回の様子とのことです。開発合宿初めてだったので、何を作ろうか漠然としながら、とりあえず、…
先週土曜日に、WCAFのイベントでセッションを担当しました。ターゲットはWebデザイナーとマークアップエンジニアなので、比較的簡単な内容です。セッション内容をそのまま加筆して記事にすることにします。では、以下、その内容。 jQueryの流行 jQueryは2005…
node.jsの記事を最近チラホラ見かけるので、入門してみました。node.jsはサーバー書いてこそって感じなんだろうと思いますが、ネットワークプログラミングの経験がないので、まずは他の言語で簡単にできることをnode.jsで書いてみようという趣旨です。 node.…
厳密に言うと間違ってるかもしれないことを感覚的に書いているので、あまり間に受けない方がいいかもしれません。JavaScriptは、自分が触ったことがある言語の中では、最も仕様を理解している言語になると思います。そろそろ真面目にサーバーサイドの言語も…
clearfixの記述を見てて、contentプロパティで内容追加して、blockにして、高さを消すとかやってるので、JavaScriptでもできるんじゃね?と思ったら、実際できたので、実用性は抜きにしてメモとして投稿しておきます。 CSSでのclearfixの記述 いろいろあるみ…
最近、エキスパートPythonプログラミングをぼちぼち読み進めてます。自分には難しい内容で読み応えがあります。Pythonのリスト内包表記っていうのがありますが、これコードを簡潔にしようと思うと、割と自然に使い始める代物で、Firefox限定でPythonからJava…
昨日、jstudyの第一回目のイベントがめでたく開催されました。Twitterで見かけて、速攻で申し込んだんですが、せっかくだからLTしたいなと思い、稚拙ながら「JavaScriptとLisp」というタイトルでLTをさせていただくことができました。発表するまで、ネタとし…
という記事を読んで、copyrightくらいだったら画像用意しなくても別に良い気がしたし、最近発表されたGoogle Font APIで少し見た目を整えるだけで十分実用的かなと思ったのでエントリーに起こしてみました。 Google Font APIとは? 19日のGoogleI/Oにて発表…
JavaScriptに、applyとcallというメソッドが用意されていますが、自分なりにapplyとcallの丁寧に説明をしてみようと思ってこのエントリーを書くなどをしてみます。applyとcallは非常に似たメソッドなので、まずはcallから説明します。 callメソッドとは? ca…
昨日、たまたま仕事で、CSV形式の名簿を加工する必要があって、最近はこういう時、JavaScriptを使って加工することがあります。昨日の話で言うと、具体的には以下のようなCSVファイルを、 ほげ株式会社,jdg,jdg@example.com 株式会社ふが,taiju,taiju@exampl…
letみたいなものをJavaScriptに実装しようと思っていろいろやってた時に感じたことなんですけど、Pythonとか、Python志向なMochikitなどに導入されているpartial関数は、引数の最後に関数を指定できると、ネストした時にが見やすいと思いました。好みはある…
Lispの勉強をする際に、まだLisp慣れを全然してないので、JavaScriptで書くとどうだろう?ということを考えることが多々あります。その勉強方法の良し悪しは置いといて、JavaScriptでLispのサンプルプログラムを書いてみようと思った場合、一番ネックなのが…
今朝投稿した、Pythonのrange関数をJavaScriptで再帰を使って実装してみた - あと味の続き。JavaScript版は基本的な関数で実装したので、おそらくGauche(Scheme)にも簡単に移植できると思って取り組んでみたものの、正直、慣れてなさすぎて超大変でした。…
Pythonにrange関数という数列を作る関数があるんですが、JavaScriptにもrange関数みたいなのがあると便利かもしれないと思って実装してみました。関数型言語慣れするために再帰で書いたので、あまり長い数列は作れません。 Pythonのfor文 Pythonでは1から10…
メソッドチェーンはわかりやすくて便利です。jQueryなどではメソッドチェーンが効果的に使えるように設計されているので、jQueryでメソッドチェーン使用している人も多いと思います。このメソッドチェーンですが、作り方を解説するページがあまりない気がす…
文字数で幅を指定できるエラスティックレイアウトが好きです。CSSでレイアウトする時、各ブラウザがページズーム機能を導入した今はほとんど必要ないことかもしれませんが、一行あたりの文字数は読みやすい数というものがきっとあると思っています。エラステ…