0

変数名にインデックスを割り当てる方法は? たとえば、project0、project1、project2 など?

for (var i=0; i<data.length; i++)
{
    var project+i = new GanttProjectInfo(1, "Applet redesign", new Date(2010, 5, 11));
    var parentTask+i = new GanttTaskInfo(1, "Old code review", new Date(2010, 5, 11), 208, 50, "");
    project1.addTask(parentTask+i);
    // Load data structure        
    ganttChartControl.addProject(project+i);
    // Build control on the page
}
4

2 に答える 2

2

@JaredFarish が示唆したように、配列を使用してすべてのプロジェクトを保存できます。それらを作成し、変数が上書きされる前に配列に追加します。

var projects = [];
for (var i = 0; i < data.length; i++) {
    var project = new GanttProjectInfo(1, "Applet redesign", new Date(2010, 5, 11));
    var parentTask = new GanttTaskInfo(1, "Old code review", new Date(2010, 5, 11), 208, 50, "");
    project.addTask(parentTask);
    ganttChartControl.addProject(project);

    // Push this project to the array to save it
    projects.push(project);
}

// Need to access the first project?
projects[0].foo();
于 2012-08-11T14:18:15.563 に答える
0

eval()を使用する

eval(( "varname" + i)+ "=" + 5 + i);

しかし、evalを使用することは実際には推奨されていませんが、あなたがやろうとしていることを回避する方法は常にあります。

于 2012-08-11T14:32:18.307 に答える