我有一个可供用户单击的数百个数字的列表,每个数字都与一个场景变量相对应,该场景变量以用户单击的相同数字结尾,即,如果用户选择了“ 43”,renderer.render(scene43,camera )执行。

//jumpSwitcher is defined the numerical value that the user has clicked on
jumpSwitcher = +value;

if (jumpSwitcher == 1) {
     renderer.render(scene1, camera);
} else if (jumpSwitcher == 2) {
     renderer.render(scene2, camera);
}


但是,这可能会持续数百次。如何编写以上代码,以便节省大量工作。以及如何有效地定义一个包含数百个这些场景变量的数组?

最佳答案

只需简单地这样写:

"use strict";
renderer.render(eval('scene' + jumpSwitcher), camera);


而且您不需要ifswitch

更新:严格模式添加了更安全的eval()docs

07-23 09:48