0

JavaScript で実行時に動的プロパティを持つオブジェクトを作成します。

それは単に次のように機能します:

var object = {
    'time' = ""
};

その後、たとえば次のように、さらにプロパティを追加できます。

var propName = "value1";
object[propName] = "some content...";

しかし、新しいインスタンスを作成できるように、実際のオブジェクトを操作する必要があります。たとえば、次のようにします。

静的カスタム オブジェクトを作成するには、次のようにします。

function NewObject(time, val1, val2, ... valn) {
    this.time = time;
    this.val1 = val1;
    ...
}

しかし、そのような関数を動的に設計する方法がわかりません。異なるユーザー入力に応じて、NewObject は 1 から n の値のプロパティを持つことができます...?

リストまたは配列を実装したほうがよいことはわかっていますが、問題の解決策があるかどうかを知りたいですか?

ご協力いただきありがとうございます。

4

1 に答える 1

1

arguments関数内でオブジェクトを使用できます。

function NewObject(time){
    this.time=time;
    if(arguments.length>1){
        for(var i=1;i<arguments.length;i++){
            this["val"+i]=arguments[i];
        }
    }
}

JSFiddle

于 2013-09-26T07:37:24.063 に答える