てきとうなメモ

本の感想とか技術メモとか

JavaScript

encodeURIComponent/decodeURIComponentにはまる

js> decodeURIComponent('+') + js> encodeURIComponent(' ') %20'+'が' 'にデコードされないし,' 'は%20にエンコードされる.直接使っていればわかるんだけども,ライブラリ(prototype.js)経由だとわかりにくい. var ajax = new Ajax.Request(url, {metho…

RubyとJavascript(の処理系)における文字列の連結

文字列を連結する時に言語処理系が何を行っているかという話.あんまりついていけていないのだがメモ.発端はここ. 現代のオブジェクト指向言語の処理系で、最もパフォーマンスに影響するのはインスタンスの生成です。そのため、言語仕様として、プリミティ…

JavaScript入門 (4)

オブジェクト JavaScriptではオブジェクトはPerlのhashに似ており,属性名と属性値のペアから構成される. js> obj = {name:"Tom", sex:"male"} [object Object] js> obj [object Object] js> obj.name Tom js> obj.sex male js> obj.age = 20 20 js> obj.ag…

JavaScript入門 (3)

制御構造 JavaScriptの制御構造はほぼCやJavaの構文と同じ if ... else if (condition1) { statement1 } else if (condition2) { statement2 } else { statement3 }conditionには比較演算子など真偽値を返すものを用いる.真偽値のリテラルはtrue とfalseに…

JavaScript入門 (2)

型 JavaScriptでサポートされているデータ型は以下の物がある. 数値 (number) 文字列 (string) 真偽値 (boolean) 関数 (function) オブジェクト (object) 未定義 (undefined) ある値の型はtypeofを用いることで調べることができる. js> typeof 42 number j…

JavaScript入門 (1)

JavaScriptとは NetscapeによるECMAScriptの実装.1995年にBrendan Eichによって開発され,Netscapeの上に実装された.JavaScriptとは言語として関係はない.当初の名前はMochaという名前で,Mocha->LiveScript->JavaScriptと名前が変更されている.これはど…