こもろぐ @tenkoma

What We Find Changes Who We Become -- Peter Morville著『アンビエント・ファインダビリティ 』

広告:本ブログで紹介している書籍等商品の紹介でAmazonアソシエイトを利用していることがあります。

JavaScript

Macのアプリをクラッシュさせるやつ

本の虫: OS XでFile:///と入力するとクラッシュするそうだ ブラクラ作れるかも?と思ったのでやってみた。(下のボタンをクリックするとMacのSafariとChromeでクラッシュします。Mac OS X 10.8.2で確認) ※注意※ 以下のコードは不具合の影響を調べることを目的…

テスト駆動 JavaScript :Internet Explorerにおける、名前付き関数式の実装

「5.3.6 再び関数式について」において、Internet Explorerにおける、名前付き関数式のひどい実装のことが言及されている。 Internet Explorerは、名前付き関数式を前にすると、2つの別々の関数オブジェクトを作り、識別子を外側のスコープにリークし、その…

テストケースとは何か

テスト駆動JavaScript を読んでいる。いままで、テストケース(testcase)の「ケース」って、事例とか場合という意味だと思っていたんだけど、容器とか入れ物のほうが正しい気がする。 テストの入れ物、だから、testほにゃららが複数入っている。

jQuery.proxy()の存在意義

ポインタのみのエントリです。 4.2 コールバックパターンを4.2.2 コールバックとスコープまで読むと jQuery.proxy() の存在意義がわかると思います。JavaScriptパターン ―優れたアプリケーションのための作法作者: Stoyan Stefanov,豊福剛出版社/メーカー: …

JavaScript パターン 4.10 カリー化

4.10.1 関数の適用 「関数の呼び出し」を「関数の適用」という正確な説明に訂正している関数を呼び出すサンプル …(1) sayHi('world'); 関数を適用するサンプル ...(2) sayHi.apply(null, ["world"]); 2つのコードでやっていることは同じで、「関数の呼び出し…

関数の種類 (JavaScriptパターン 4.1.1 用語の整理)

名前付き関数式 (named function expression) var add = function add(a, b) { return a + b; }; console.log(add.name); // => "add" 名前が付いていると、Firebugでデバッグ時に便利らしい 関数式 (無名関数) (function expression, a.k.a anonymous funct…

DOM Scripting 標準ガイドブック、読了

DOM Scripting 標準ガイドブック ~やさしく学ぶ、JavaScriptとDOMによるWebデザイン~ (Web Designing BOOKS)作者: Jeremy Keith,中村享介,吉川典秀出版社/メーカー: 毎日コミュニケーションズ発売日: 2007/06/21メディア: 単行本(ソフトカバー)購入: 4人 …

jquery.comのコナミコマンドの実装

http://wassr.jp/channel/jquery/messages/E8cjDfpaN1 jQuery 本当だ。 javascriptのコードはhttp://static.jquery.com/files/rocker/scripts/custom.jsの一番下に。 // Hehe. if ( window.addEventListener ) { var kkeys = [], konami = "38,38,40,40,37,3…

Ajaxアプリケーション & Webセキュリティ

Ajaxアプリケーション & Webセキュリティ作者: Christopher Wells,牧野聡出版社/メーカー: オライリー・ジャパン発売日: 2008/02/19メディア: 大型本購入: 5人 クリック: 53回この商品を含むブログ (18件) を見るなんとなく

継承

JavaScript 第5版 p.170 callの有効な使い方キターッ。 サブクラスにしたいコンストラクタ関数のなかで、SuperClass.call(this, arg1, ...)と呼び出す。すると、SuperClass()関数を、「呼び出した場所のメソッドのように」関数を動かせる。(SuperClassの中で…

クラスはないけれど

JavaScript 第5版 p.159 JavaやPythonのようなクラスや、クラスベースの継承はJavaScriptには無い。しかし、コンストラクタ関数と、(スーパークラスの代わりに?)プロトタイプオブジェクトがある。 Javaではフィールド、C++ではメンバ変数?と呼んでいたもの…

プロトタイプ

JavaScript 第5版 p.154 プロトタイプを理解するまでの流れ 関数には最初からprototypeプロパティがついてくる。 function Hoge(prop){ this.prop = prop; } Hoge.prototype.get = function(){ return this.prop; } newして呼びだす関数のことをコンストラク…

コンストラクタ関数

JavaScript 第5版 p.152 コンストラクタ関数ってのがまた驚きだ。どうみてもタダの関数なのに…いや、そうでもないか…newで呼び出しているのだから。returnしなくてもオブジェクトが返ってくるのも奇妙だ。あと、メソッドなんかもコンストラクタ関数の中で定…

カリー化,スコープチェーン,Callオブジェクト…

JavaScript 第5版 p.140 カリー化とは、ある関数の引数をあらかじめ指定した、新しい関数を定義すること。 スコープチェーンってなんだっけ?p.57ページで説明があったのに忘れている。スコープチェーンとは、それぞれのスコープ(グローバルスコープ、関数内…

apply(), call()そしてthis

JavaScript 第5版 p.138 8.6.4 d:id:tenkoma:20071002:1191342972 再び、p.138の説明を読みましたが、やっぱりcall()の存在意義ってなに?って思った。apply()の方は、引数を配列で渡せるメリットがある、というのが、今までの理解。 google検索して見つかっ…

arguments.lengthプロパティと関数オブジェクトのlengthプロパティ

2週間くらい放置していて、その間にアフィリエイトで1冊売れていました。ありがとうございます。 JavaScript 第5版 p.136 8.6.1 lengthプロパティ JavaScriptの関数では、仮引数を指定できる。…と書いたけど、関数を定義できるプログラミング言語では普通。 …

JSSpec

http://jania.pe.kr/aw/moin.cgi/JSSpec Route 477(2007-10-01)経由。 デモ:http://jania.pe.kr/jsspec/demo.html 熱い。 書いてみた。 describe('ソートメソッド', { 'Array.sort() should be sorted by numerical value usually': function() { var a = […

引数

javascript 第五版 p.130 javascriptは引数の型チェックも個数チェックもないので、(足りないと未定義値に、多いときは引数名ではとってこれないが、argumentsオブジェクトから参照できるよ)省略可能な引数にコメントを付けておくのはいい習慣らしい。 長く…

JavaScript1.6の配列

JavaScript 第5版 p.121にて。 Firefox1.5にはJavaScript1.6が載っていて、(Firefox2.0はJavaScript1.7らしい)配列に forEach() map() filter() メソッドが追加されていて、それぞれ関数オブジェクトを引数にして処理させることができる。 JavaScript1.7 Jav…

jQueryで要素内テキストをエヴァモード

jQueryのプラグイン作成が簡単だというので作ってみた。 着想はXUL Apps > Tiny Applications > 高橋メソッドなプレゼンツール in XUL リターンズ - outsider reflexから得た。エヴァモードのフォントのリストも利用しました。(あと、操作しているノートパソ…

Argumentsオブジェクト

function test(){console.log(arguments);} test('a', 'hoge'); function test2(){console.log(arguments.callee);} test2('a', 'hoge'); 結果 ["a", "hoge"] test2() calleeプロパティは再帰呼び出し可能な匿名関数を定義するときに使える

javascriptのfor/in文の挙動

Pythonのfor inやPHPのforeachを知っていた(配列の値が入る)ので、javascriptのfor/in文の、「ループごとにプロパティ名が、変数に代入される」という挙動になかなかなじめませんでした。 今思えば、リファレンスを読めばすぐ解決する類の悩み。

見方が変わるわ

第5章・式と演算子 作用と副作用、オペレーター(演算子)とオペランドJavaScript 第5版作者: David Flanagan,村上列出版社/メーカー: オライリー・ジャパン発売日: 2007/08/14メディア: 大型本購入: 52人 クリック: 1,011回この商品を含むブログ (270件) を見…

end()はすごい

このブックマークコメントが気になりました。 はてなブックマーク - IT戦記 - JavaScript < jQuery < Lisp ? 2007年08月24日 yojik yojik jQueryのend()は発明だなーendメソッドがなにをしているのかDOM要素の操作 - jQuery 開発者向けメモを読んでもいまい…

jQuery

jQueryでRSSを読み込んで表示するツールを作りたいと思いましたが、クロスドメインのXMLはセキュリティ設定をいじる必要があるらしく断念しました。が、jQueryはおもしろいですね。 Redirect jQuery 開発者向けメモ 気に入ったところ 他のライブラリ・ツール…

ECMAScript互換かどうかはどうやってチェックするんだろう

JavaScript第5版を読んでいると、まだ30ページも読んでいないのにECMAScript v3でサポートしてないって何度も出ます。 ECMAScript準拠ってどうやってチェックするんだろう?? 検索したら、ちょっと目的のものとは違いますがチェッカーを見つけました。 Java…

JavaScript 第5版

JavaScript 第5版作者: David Flanagan,村上列出版社/メーカー: オライリー・ジャパン発売日: 2007/08/14メディア: 大型本購入: 52人 クリック: 1,011回この商品を含むブログ (270件) を見る読み始める。JavaScriptって使えているようでわからないことばかり…

JavaScript 第5版

JavaScript 第5版作者: David Flanagan,村上列出版社/メーカー: オライリー・ジャパン発売日: 2007/08/14メディア: 大型本購入: 52人 クリック: 1,011回この商品を含むブログ (270件) を見る買った。

JavaScriptクイックリファレンス 第5版―JavaScript1.5対応

JavaScriptクイックリファレンス作者: David Flanagan,木下哲也,福龍興業出版社/メーカー: オライリージャパン発売日: 2007/05/25メディア: 単行本購入: 5人 クリック: 87回この商品を含むブログ (32件) を見るその2

職場でJavaScriptに触らせてもらった.

DOMでがしがしコードを量産していたら,「ユー,プロトタイプジェーエス使いなよ(意訳」 と言われた. http://www.imgsrc.co.jp/~kuriyama/prototype/prototype.js.htmlをみながら,Ajax.Requestとか使った.Prototype.jsはすごい! Ajaxを使わないといけな…