2007-04-13 18:09 : JsUnit(2.2alpha11)を使ってみる 最近、JavaScript のテストを行う方法を探していました。xUnit 系の JsUnit や MochiKit に付属してくるテストフレームワークが有名どころのようです。とりあえずテスト用のメソッド名になじみのある JsUnit を使ってみることにします。 ■ 目的 alert デバッグから開放される! ■ この記事に書かれていること ・ JsUnit の基本的な情報 ・ 複数のテストファイルを同時に実行する方法 ・ testRunner.html で毎回テストファイル名を指定しないでテストを実行する方法 ■ JsUnit の概要 まず、testRunner.html というテストランナーが存在します。html ファイルの script タグ内にテストコードを書い
http://www.nintendo.co.jp/wii/q_and_a/093.html#category05 ↑を参考にして色々触ってみました。読んでみると isBrowsing が 1 の時の動作が微妙かな?と思いましたが本当に微妙なところがありました。 もうひとつ微妙だと思ったのは2本目以降のリモコンのリンクなどへのイベントかな。2本目以降の当たり判定は自作になりそう。 dpdDistance と dpdValidity は isBrowsing が 1 のリモコンからしか取得できない、っぽい。 dpdScreenX, dpdScreenY という画面のピクセル数を基にした座標の数値を取得するプロパティがある。isBrowsing の値には関係なし。しかし画面外にカーソルがあるときはこのプロパティが存在しないようになる。 isBrowsing が 1 の時は拡張機能によるボタンフ
Jash: JavaScript Shell Jash is a DHTML-based window that gives you command-line JavaScript access to the current browser window. JavaScriptの開発等にかなり使えるJavaScriptシェル「Jash」。 Jashサイトのダウンロードページでブックマークレットがダウンロードでき、このブックマークレットを設定し、実行することでサイト内に小窓が開きます。 小窓には JavaScript シェルが統合されていて、小窓にJavaScriptコードを入力して、JavaScript の対話的な実行が可能です。 (入力欄は、TABキーによる補完も可能です) Jashを使って、例えば、次のようなことが可能になります。 サイト上で定義されているJavaScript変数の中身
nanto_vi (TOYAMA Nao) 自己紹介 外山真 (とやまなお) a.k.a. nanto_vi (なんと) http://www.ne.jp/asahi/nanto/moon/ http://nanto.asablo.jp/blog/ 肩書き: 学生 Not in Education, Employment or Training E4Xとは? ECMAScript for XML ECMAScriptにネイティブXMLサポートを追加 ネイティブ → Date, Array and etc. Firefox 1.5/JavaScript 1.6で実装 型 XML型 DOM Nodeに相当 属性・テキストノードなども含む XMLList型 DOM NodeList/DocumentFragmentに相当 1項目のXMLListはXMLとして扱える XML/XMLListコンスト
この文書は ECMA-357 ECMAScript for XML (E4X) Specification 2nd edition を訳者 (nanto_vi) が私的に訳したものであり、Ecma International またはその他の関連団体・個人とは一切関係ありません。 この文書は正規の仕様ではありません。正規の仕様に関しては Ecma International から PDF で公開されています。 翻訳の内容については保障しません。この文書の利用によって発生したいかなる損害についても訳者は責任を負いません。 翻訳上の誤りなどがあれば訳者 (ブログまたはメール <nanto (at) moon.email.ne.jp>) までご連絡ください。 Standard ECMA-357 2nd Edition / December 2005 序文 2002 年 6 月 13 日、BEA S
廃止 この機能は廃止されました。まだいくつかのブラウザーで動作するかもしれませんが、いつ削除されてもおかしくないので、使わないようにしましょう。 警告: E4X は廃止されました。 この機能は、Firefox 17 において content 向けにはデフォルトで無効となり、Firefox 20 では chrome 向けにもデフォルトで無効となる予定です。 そして、Firefox 21 において削除される予定となっています。 代わりに、DOMParser/DOMSerializer や非ネイティブの JXON アルゴリズムを使用してください。 ECMAScript for XML (E4X) は、ネイティブ XML サポートを JavaScript に追加するプログラミング言語拡張です。これは ECMAScript プログラマにとって違和感がない形で XML 文書にアクセスできるようにするも
E4X (ECMAScript for XML) は ECMAScript3 の拡張として開発された XML データを扱うための仕様です。2nd Edition が昨年末に公開されています(こちら)。AS3 では新しく E4X のクラスがサポートされ、従来よりもずっと簡単に XML データを扱うことができるようになりました。 AS3 でも AS2 で使われていた XML クラスは XMLDocument と名前を変えて他の関連クラス (XMLNode 等) と共に flash.xml パッケージに含まれています。しかし、これは過去に開発したコードのサポートが主目的で、今後の使用を推奨するものではありません。 さて、まず手始めに E4X の簡単な例を見てみましょう。以下のような XML 文書があるとします。 <order> <book id="1"> <title>learning
Firefox 1.5では、 ECMAScript for XML (E4X) が利用できます。 JavaScript 中に XML コードを埋め込んで XML オブジェクトとして利用できるほか、 (XML.ObjTreeクラスのように) 面倒な DOM 操作ではなくてJavaScriptオブジェクトの プロパティを辿るようにして簡単に XML のデータ構造にアクセスできます。 大なり・小なりの記号を新しい用途に使っているわけですね。賢い! (C++ のストリームの << よりもよっぽど直感的な用途だと思う) XML の処理がスゴく直感的に分かりやすくなるので、良いと思うのですが、 まだ IE では使えないので、一般に普及するのはまだ当分先になりますね……。 ※このページのスクリプトは、Firefox 1.5 用になります。 IE 7/Opera 8.53 では動作しません。 要素の値・属
JSDoc をやっと真面目に使ってみた。実際に使ってみてハマったところを取り上げていく。基本的な使い方は自分で調べるなり試行錯誤するべし。 なお、以下はバージョン 1.9.9.2 について書いている。時間の経過とともにおかしな内容になっていく可能性大なので注意されたし。あと日本語のコメントは試してないんでどうなるか知らない。 正しく書く値を取る attribute で値を書いてない1など、構文的に正しくないときに、よく HTML::Template の方でエラーを吐いて止まる。phpDocumentor みたいにエラーレポートは作ってくれないし、HTML::Template 段階でのエラーってことは当然パーサが吐いてるわけはなく、どこの何の記述(あるいは記述不足)がエラーなのかさっぱり分からないので、あとでまとめてドキュメントを生成するのではなく、こまめに作るようにした方がよさげ。 書き方
コンソール上から JavaScript で Web ブラウザを操作できる、JS Commander というプログラムを作ってみました。JS Commander を立ち上げるとプロキシサーバが同時に起動し、このプロキシサーバを使うように Web ブラウザを設定すると、コンソール上で JavaScript のコードが入力できるようになります。Web ブラウザ上の JavaScript を自由に実行できるコンソールには FireBug, FireBug Lite, jsh, MozRepl などがありますが、JS Commander の特徴は以下のような感じです。ブラウザ非依存 - XmlHttpRequest が使えるブラウザであればたぶん動きます。readline を使った操作 - bash などのシェルと同じような emacs 風キーバインドが使えます。別のマシンにあるブラウザも操作可能
CNetでも報道された通り、Sunが独自のスクリプト言語JavaFX Scriptを発表した。テクノロジーの優劣だけで決まるものではないので、この試みがうまく行くかどうかは何とも予測しがたいが、とりあえず言語仕様が公開されたので目を通してみた。 私なりに興味深いと思った点は以下の5つ(ただし、私なりの拡大解釈が多少入っている可能性もあるので要注意)。 1.宣言型のUIをサポートしていること 宣言型大好き人間の私としては、この方向性は大賛成(ちなみに、UJMLも宣言型のUI言語^^)。"押してね!"というラベルがついたボタンを表示するには、こう書けば良い。 Frame { content: Button { text: "押してね!" action: operation() { System.out.println("押してくれて、ありがとう"); } } visible: true } 2
Example: var nums:Number* = [1,2,3]; The above example declares a new variable named nums whose value is defined to consist of zero or more instances of type Number and whose initial value is [1,2,3]. The :typeName, [?,+,*], and = initializer portions of the declaration are optional, so the following is equivalent to the above: var nums = [1,2,3]; top Functions, Arrays, Expressions, and Op
やっていることは「高度な JavaScript 技集」の「UTF-8 <-> UTF16 変換」と同じ。 function toUTF8Octets(string) { return unescape(encodeURIComponent(string)); } function fromUTF8Octets(octets) { return decodeURIComponent(escape(octets)); } encodeURIComponent は encodeURI でもいい (むしろそのほうが処理する文字種が減って速くなりそう) が、decodeURIComponent は decodeURI にすると一部の文字 ("?"、"#" など) がデコードされなくなる。 使いどころ Base64 エンコードする関数 (「高度な JavaScript 技集」の base64encod
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く