以下代码展示了如何优化一个 JavaScript 函数 handlerClick,该函数根据 status 属性的值执行不同的逻辑:

async handlerClick(item) {
  this.item = item;
  this.carSupplyTransferDetailId = item.supplyTransferDetailId;
  this.show = true;
  const { data: vinList } = await (this.status === 2 ? deliveryQueryVinCodeDto : warehousingQueryVinCode)({
    carSupplyTransferDetailId: item.supplyTransferDetailId,
    supplyTransferId: +getParams().id,
  });
  const { 
    data: { vinNos },
  } = await submitForWarehousing({ carSupplyTransferDetailId: item.supplyTransferDetailId });
  this.vinList = vinList.map((vinItem) => {
    vinItem.isSelected = vinNos.includes(vinItem.vinNo);
    return vinItem;
  });
}

优化后的代码:

  1. 简化条件语句: 使用三元运算符 this.status === 2 ? deliveryQueryVinCodeDto : warehousingQueryVinCode 来简化代码,避免重复的逻辑代码。
  2. 提升代码可读性: 使用更简洁的代码结构,将 vinListmap 操作简化,使代码更易理解。

优化后的代码:

async handlerClick(item) {
  this.item = item;
  this.carSupplyTransferDetailId = item.supplyTransferDetailId;
  this.show = true;
  const { data: vinList } = await (this.status === 2 ? deliveryQueryVinCodeDto : warehousingQueryVinCode)({
    carSupplyTransferDetailId: item.supplyTransferDetailId,
    supplyTransferId: +getParams().id,
  });
  const { 
    data: { vinNos },
  } = await submitForWarehousing({ carSupplyTransferDetailId: item.supplyTransferDetailId });
  this.vinList = vinList.map((vinItem) => {
    vinItem.isSelected = vinNos.includes(vinItem.vinNo);
    return vinItem;
  });
}

通过这些优化,代码更简洁易读,并提升了代码的效率。

JavaScript 代码优化:简化条件语句并提高代码可读性

原文地址: http://www.cveoy.top/t/topic/lMx4 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录