我需要根据各种情况有选择地运行几个函数。我有这样一个基本的目标:函数名称作为对象值
object = {
whatever : {
objects : null
},
something : {
objects : // some object
}
};
我需要通过对象的值进行迭代,如果objects
是not null
,我需要运行特定的功能。如果whatever.objects
不为空,则需要运行whateverFunction();
。如果something.objects
不为空,我需要运行somethingFunction();
。
for(i in object)
{
if (object[i].objects)
// run a certain function
}
根据对象中的值运行这些人为命名的函数的最佳方法是什么?我可以将“要运行的功能”的名称存储在对象中,但我想尽量避免评估。
创建一个类对象,每个类都有自己的函数可以运行,如果是的话,我该怎么做呢?
仅供参考:函数本身就是对象,因此可以传递并存储。所以,不需要存储函数的名字;存储函数本身。 (如果情况允许,就是这样) – Matchu
尼斯和封装 – Phil
@Matchu哈哈,我正在研究这个解释,但你打败了我。 –