JavaScript
a = _.compose( (v) -> String(v).toLowerCase() (v) -> String(v).toUpperCase() ) a 'Hi!' # => 'hi!' 後方から前方の関数に向かって処理が走るのか!
JavaScriptで学ぶ関数型プログラミング作者: Michael Fogus,和田祐一郎出版社/メーカー: オライリージャパン発売日: 2014/01/18メディア: 単行本(ソフトカバー)この商品を含むブログ (5件) を見るJavaScriptで学ぶ関数型プログラミングを読んで(全部読ん…
JavaScriptで学ぶ関数型プログラミング作者: Michael Fogus,和田祐一郎出版社/メーカー: オライリージャパン発売日: 2014/01/18メディア: 単行本(ソフトカバー)この商品を含むブログ (5件) を見るこの本、自分にはスキル的にちょっと早すぎた感があるかも…
JavaScriptで学ぶ関数型プログラミング作者: Michael Fogus,和田祐一郎出版社/メーカー: オライリージャパン発売日: 2014/01/18メディア: 単行本(ソフトカバー)この商品を含むブログ (5件) を見るとすべての人に知っておいてほしい スタイルシートデザイン…
https://codeiq.jp/ace/yanai_masakazu/q528 実行速度とか考えずに、パッパっと書いたコードです。 function yourCode(obj, key) { // 漢字と読みのペアを読みでソートします var pairs = getPairs_(obj.kannji, obj.yomi).sort(function(a, b) { return a.y…
要素をループでappendChildするよりも、DocumentFragmentとかを使った方が速いよーとCodeIQのフィードバックでもらったのですが、DocumentFragmentってなんぞやという状態だったので調べつつ試しに書いてみました。 index.html <meta charset="utf-8"> <title>DocumentFragment</title> <ul id="list"></ul> <script src="index.js"></script> index.js</meta>…
より。 backbone.jsとknockout.jsを少しやってみて、angular.jsもちょっと気になったのでドットインストールで勉強してみたり。 なんかこう、未だにMVCってよくわかってないんだけど(Viewだけはわかる、かな)尚更わからなくなった感じ。 jQueryだけでごち…
backbone.jsの勉強をしようと思っていたのだけど、今作ろうとしている物に対しては大きすぎるという感じがしたので、knockout.jsも勉強することに。 knockout.jsはbackbone.jsよりも軽量っぽい。てかMVVMだからそもそもbackbone.jsと違うアプローチのライブ…
https://codeiq.jp/ace/cielavenir/q431をJavaScriptで解きました。ObjectPascalでも解こうと思ったのですが、FreePascalをインストールするのが面倒だったので諦めました。 #!/usr/bin/env node console.log(function() { /* * H - 72 - 1001000 - IOOIOOO …
Backbone.js使えるようになるべく、試して学ぶBackbone.jsを読みながら試してみました。 JavaScript | Knowledge Note 試して学ぶ Backbone.js入門 | Knowledge Note 試して学ぶ Backbone.js入門2 | Knowledge Note 試して学ぶ Backbone.js入門3 | Knowledge…
ltsv.jsを0.7.0にバージョンアップ、ブラウザでも動作するようにしました。ストリームだけは動作しませんが。 npmとbowerでインストールできます。 正直、ブラウザで動作してなにか嬉しい事あるの……という風には思ってたりします。 今まではnode.js専用だっ…
普段、JavaScriptのコードをlintするときはClosureLinterを使っているのですが、何故か実行できずに失敗して落ちてしまう原因がわかったのでメモしておきます。 index.js ;(function() { // ... }()); 上記のようなスクリプトを用意します。 で、以下のよう…
http://codeiq.hatenablog.com/entry/2013/08/08/115705を解きました。CodeIQの「複数書式が混在するログをやっつける」を解いたよ - 四角革命前夜の前に書くはずだったのだけど、すっかり忘れてた。 リポジトリはGitHub - hatena/Hatena-Intern-Exercise201…
http://codeiq.hatenablog.com/entry/2013/08/19/122201を解いたのでせっかくだしコードを置いておこうかなーと。というわけで私が「Node.jsが1名ということで」の1名なのでした。ついでに「全体を一気にparseする正規表現を用意派」です。 node.jsで書くに…
http://codeiq.hatenablog.com/entry/2013/08/06/121542 せっかく書いたので、一応ここにも書いておこうかと。言語は現時点で一番得意なJavaScript/node.jsで。 まあ、どちらもあまり綺麗なコードではないのだけど…… rev3 #!/usr/bin/env node console.log(f…
第5章まで進んだので、第6章のハッシュ探索法をやる……つもりが諸事情により第11章のエラトステネスのふるいをやることに。 基本的にこの本とWikipediaを参考に書いたのだけど、「平方」の意味がわからなくて困ったという情けなさ…… これ、何回もループするか…
アルゴリズムを、はじめようを読んでみたメモ。アルゴリズムとか苦手なんですけど、避けていてもよくないなあと思っていたところ、平易な説明をしてくれている本を見つけたので頑張って書いてみたのですよ。アルゴリズムを、はじめよう作者: 伊藤静香出版社/…
あー、たまに見るなーと思ったコード。 function Aaa() { if (!(this instanceof Aaa)) { return new Aaa(arguments); } } この関数を呼ぶとき、newを付けていようが付けていまいが同じ動作になる。 でもJavaScript Ninjaの極意にもあったけどそれってうれし…
JavaScript Ninjaの極意 ライブラリ開発のための知識とコーディング (Programmer's SELECTION)作者: ジョン・レシグ,John Resig,ベア・ビボー,Bear Bibeault,勝亦勇,吉川邦夫出版社/メーカー: 翔泳社発売日: 2013/05/25メディア: 大型本この商品を含むブログ…
なんか昔に書いたゼロパディングする関数を書き直したくなったので書いてみた。 ちなみに、これ。http://d.hatena.ne.jp/sasaplus1/20110720/1311170750 #!/use/bin/env node function padding(value, column) { return (Array(parseInt(column, 10) + 1).jo…
メンテナブルJavaScriptをやっと読みました。メンテナブルJavaScript ―読みやすく保守しやすいJavaScriptコードのための作法作者: Nicholas C. Zakas,豊福剛出版社/メーカー: オライリージャパン発売日: 2013/03/06メディア: 大型本購入: 7人 クリック: 31回…
勉強会などに行くと、たまにブラウザを使って発表をする方がいらっしゃると思います。 発表する人によって使っているプレゼンライブラリだったり、デザインだったりが違ったりだとかすると思うのですが、 それ以外にもどうやって作ってるのかなーというのが…
ずっと前に使ったのだけど、メモもなにもして無くてコードが辛うじて残っていたのでめもめも。 benchmark.jsのインストール $ npm install benchmark node.jsだけじゃなく、RingoJSやRhinoでも動作するみたい。jsperfでも使われていたはずなので、当然ブラウ…
もう存在しない、日本語で書かれたウェブサイトの方ではなくて、最近発売された本の方です。Effective JavaScript作者: David Herman,吉川邦夫出版社/メーカー: 翔泳社発売日: 2013/02/19メディア: 大型本購入: 1人 クリック: 109回この商品を含むブログを見…
ちょっとはまった。 function Aaa() { this.list = []; } Aaa.prototype.test = function() { var aaa = this.list; this.list = this.list.concat([1,2,3]); console.dir(this.list); console.dir(aaa); }; (new Aaa).test(); [ 1, 2, 3 ] []this.listはcon…
http://javascript.about.com/od/objectorientedjavascript/a/oop17.htmを参考にちょっと書いてみた。 function clone(obj) { var clonedObject = {}, keys = Object.keys(obj), i = keys.length, value; for (; i--;) { value = obj[keys[i]]; if (value !=…
以前、JavaScriptのドキュメントジェネレータをいろいろ触ってみたりしたのですが、また必要になりそうなので3つほど触ってみたのでした。 JavaDoc系のコメントをばっちり書かないと駄目なやつは面倒なので避けたいなあと思いつつも(自分は別に良いのだけど…
package.scripts.patternに指定する値が全然意味わからないので、とりあえず今は諦めた。 mochaと連携してるのが良いなあと思ったのだけどなあ…… Yahoo製のhttps://github.com/yahoo/istanbulというのも見つけたので、こっちも触ってみたい感じ。 ただまあ、…
コードカバレッジを出力できるツールとか - 四角革命前夜で調べた後にBlanket.jsの存在を知ってちょっと使ってみたり。Blanket.js なかなかお手軽で良いので、それに関する記事を書こうと思ったのだけどpackage.jsonに書くscripts.blanket.patternの指定がい…
外部ライブラリ不要で、たった一つのツイートに納まる長さのコードでひたすらアイドル水着画像を集める - uzullaがブログがなんか面白そうだったので、JavaScriptとCoffeeScriptで。というかnode.jsで。 でもRubyとかと比べたら短さでは勝てない……ぐぬぬ。 …