0

私は、data1、data2 などの名前のオブジェクトに格納されているデータセットを使用する既存の Javascript コードに取り組んでいます。数字は、データベースから取得した ID です。

ここで、ID を入力として受け取り、その ID を使用して適切なオブジェクト名を作成し、そのオブジェクトをパラメーターとして関数に渡す、少し追加の関数を作成する必要があります。

したがって、次のようなものです:

function doStuff(id){
    var objname="data"+id;
    //now, I need to pass the object (not just the name) to a function
    someFunction(objname);    //this obviously doesn't work, because it just passes the object name as a string
}

では、オブジェクト名がわかっている場合、実際のオブジェクトを関数に渡すにはどうすればよいでしょうか?

質問は初歩的に聞こえますが、これを行う方法があると思いますが、グーグルは役に立たないようです。

4

2 に答える 2

1

オブジェクトが存在するため、それらを「見つける」方法が必要です。Key-Value配列を使用して、文字列とオブジェクトの間に関係を作成することをお勧めします。キーは文字列であり、値はオブジェクトです。次に、文字列を使用して配列にインデックスを付けることができ、オブジェクトが返されます。

于 2013-02-10T19:40:58.897 に答える
1

オブジェクトを作成し、次のようにキーを格納します。

var obj = {
    data0 : "example 1",
    data1 : "example 2"
}

次に、次のようにプロパティにアクセスできます。

function doStuff(id) {
    var key = "data" + id;
    someFunction(key);
}

someFunction(key) {
    return obj[key];
}
于 2013-02-10T19:44:27.130 に答える