つまり、次のコードはどのようになりますか。
var sup = new Array(5);
sup[0] = 'z3ero';
sup[1] = 'o3ne';
sup[4] = 'f3our';
document.write(sup.length + "<br />");
さまざまな要素を設定するだけで、長さの「5」を出力しますか?
このコードの「問題」は、またはメソッドlength
を呼び出さないとどのように変化するかがわからないことです。私が次のいずれかを行うとき:getLength()
setLength()
a.length
a['length']
a.length = 4
a['length'] = 5
非配列オブジェクトでは、dict/連想配列のように動作します。配列オブジェクトでこれを行うと、特別な意味があります。JavaScriptのどのメカニズムがこれを可能にしますか?JavaScriptには、翻訳するある種のプロパティシステムがありますか
a.length
a['length']
「get」メソッドに
a.length = 4
a['length'] = 5
「set」メソッドに?