我有面具和代码设计方案,以避免大量的if-else块
var codes = [
foo: { mask: 0x1234, code: 0x0010 },
bar: { mask: 0x1F00, code: 0x0310 },
bla: { mask: 0x12F0, code: 0x2010 }
...
]
的大名单,我希望做一些操作...
var doStuff = function(number) {
if ((number & codes.foo.mask) == codes.foo.code) {
// do some stuff
} else if ((number & codes.bar.mask) == codes.bar.code) {
// do other stuff
} else if ((number & codes.bla.mask) == codes.bla.code) {
// do other stuff
}
...
}
你会如何设计你的程序要避免大的if-else块? 示例代码使用javascript,但任何语言的设计模式对我来说都可以。
你能简要总结一下“做其他事情”中的内容吗? –