在写代码的时候会遇到各种的判断情况,如果使用if语句的话,会使自己的代码变长而且也不易读

三元运算优化

  1. if(bool){
  2. val = 1
  3. }else{
  4. val = 2
  5. }
  6. // 改动后
  7. val = bool ? 1 : 2

&&优化

  1. data[anything] && data[anything]();

includes羽化

  1. // 冗余
  2. if (x === 'abc' || x === 'def' || x === 'ghi' || x ==='jkl') {}
  3. // 简洁
  4. if (['abc', 'def', 'ghi', 'jkl'].includes(x)) {}
  5. / 冗余
  6. let test: boolean;
  7. if (x > 100) {
  8. test = true;
  9. } else {
  10. test = false;
  11. }
  12. // 简洁
  13. let test = x > 10;
  14. // 冗余
  15. if (first !== null || first !== undefined || first !== '') {
  16. let second = first;
  17. }
  18. // 简洁
  19. let second = first || '';
  20. // 冗余
  21. for (var i = 0; i < testData.length; i++)
  22. // 简洁
  23. for (let i in testData)
  24. // 或
  25. for (let i of testData)

对象属性优化

  1. const result = {
  2. 1: 'none',
  3. 2: 'two',
  4. 3: 'three'
  5. }
  6. return result[key] || '';

Switch优化

if多的情况下使用switch 代码美化,switch条件
switch不如 对象属性简洁

  1. switch (data) {
  2. case 1:
  3. test1();
  4. break;
  5. case 2:
  6. test2();
  7. break;
  8. case 3:
  9. test();
  10. break;
  11. // so on...
  12. }