関数について
function foo() { } var foo = function() { } foo() <- ()をつけると、関数になる。
関数はオブジェクト。
var foo = new Object(); foo.name1 = hoge; foo.name2 = function() { }; は var foo = { name1 : hoge, name2 : function() {...}, } とおなじ。
JavaScriptのオブジェクトはハッシュテーブルのようなもの
配列のlengthプロパティは、「インデックス最大値 + 1」を表す値で自動的に更新される特殊なプロパティ
添え字として無効なキーは、lengthに影響を与えない
コンストラクタ作成---インスタンス function foo() {...} var hoge = new foo(); オブジェクトにプロパティを後からセットすることも可能 hoge.name = "value";
関数オブジェクトを作成するもう一つの方法として、Functionクラスのコンストラクタ を使用することもできます。 var hello = new Function("...");
Functionコンストラクタ
以下のような定義になっています。
Function (p1, p2, … , pn, body) p1からpnまでは関数の仮引数、 bodyは関数の本体を表しており、 すべて文字列で指定します。
Objectは単数形
function,Functionは複数形
っていう認識でいいのかな?