使用Javascript在forEach中进行切换是不好的做法吗?
book.forEach(function (getBook, i) {
switch (getBook) {
case path:
string = 'some html';
break;
};
});
我的理解是,这将为每个getBook实例创建一个开关。假设其中有100个。然后,我有100个单独的开关。那不好吗?
最重要的是,有人有更好的方法吗?似乎只有一个开关而不是一堆开关会更好。
最佳答案
在此示例中,调整当前代码,您可以执行以下操作-
bookActions = {};
bookActions['path'] = function() { // or the real way you're loading these
// other code to generate that you would have had in
// the switch case
return 'some html';
};
然后再像以前一样处理100个左右的案件
book.forEach(function(getBook, i) {
if (bookActions[getBook]) {
string = bookActions[getBook]();
}
});
这样,我使用文字对象作为字符串(代码中的
getBook
)和函数(开关盒体)之间的映射。关于javascript - 在forEach中使用Javascript进行切换是不好的做法吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28734393/