js Switch及多个if else简写

可以将条件保存在键值对像仲,根据条件使用

// 常规用法
switch (data) {
  case 1:
    test1();
  break;

  case 2:
    test2();
  break;

  case 3:
    test();
  break;
  // And so on...
}

// 简写之后
var data = {
  1: test1,
  2: test2,
  3: test
};

data[key] && data[key]();

多个if else

// 正常使用
if (type === 'test1') {
  test1();
}
else if (type === 'test2') {
  test2();
}
else if (type === 'test3') {
  test3();
}
else if (type === 'test4') {
  test4();
} else {
  throw new Error('Invalid value ' + type);
}

// 简写之后
var types = {
  test1: test1,
  test2: test2,
  test3: test3,
  test4: test4
};
 
var func = types[type];
(!func) && throw new Error('Invalid value ' + type); func();
原文地址:https://www.cnblogs.com/chao202426/p/15573563.html