我认为这可能是您正在寻找的(小提琴:http: //jsfiddle.net/zXHNZ/1/):
var data = [
"1,1,1,1,1,1,1,1,1,1, 1.5",
"1,1,1,1,1,1,1,1,1,0, 2.5"
];
var handlers = {
"1,1,1,1,1,1,1,1,1,1": function(value){
console.log("I am handler 1, value is: " + value);
},
"1,1,1,1,1,1,1,1,1,0": function(value){
console.log("I am handler 2, value is: " + value);
}
}
var execute = function(record){
var lastCommaIndex = record.lastIndexOf(",");
var firstSection = record.substring(0, lastCommaIndex);
var dataSection = record.substring(lastCommaIndex + 1);
handlers[firstSection](dataSection);
}
for (var i = 0; i< data.length; i++) {
execute(data[i]);
}
此外,您可能希望去掉二进制数字之间的逗号,以节省带宽。如果您想为某些组合创建一个通用处理程序,这也可以推广到 01010.. 类。