优化 JavaScript 代码:树形结构数据排序
优化后的代码:
if (refreshType && (refreshType === 'addLevel' || refreshType === 'cut') && pasteLastObj) {
for (let i = 0; i < griddata.length; i++) {
const currentData = griddata[i];
if (currentData.parentId === pasteLastObj.parentId || currentData.parentId === pasteLastObj.id) {
if (currentData.reqType === 'title' && ((currentData.isChanged && currentData.isChanged === 'Y') || refreshType === 'cut')) {
if (currentData.reqLevel === level || refreshType === 'cut') {
currentData.treeSort = num1 === 1 && refreshType !== 'cut' ? pasteLastObj.treeSort + 1 : currentData.treeSort + 1;
currentData.isChanged = 'Y';
} else {
currentData.treeSort = _sortId + 1;
currentData.isChanged = 'Y';
}
}
_sortId++;
}
}
}
优化说明:
- 使用 for 循环代替 if 语句的多层嵌套,减少代码的复杂度。
- 将 griddata[i] 赋值给一个常量 currentData,减少代码中的重复读取,提高代码的可读性和执行效率。
- 将 if 语句中的逻辑条件提取出来,分别进行判断,减少嵌套的层数,提高代码的可读性。
- 对于变量名的命名,尽量使用语义化的名称,方便理解和维护代码。
优化后的代码 通过使用 for 循环遍历 griddata 数组,并使用常量 currentData 来存储当前元素,简化了代码结构,同时提高了可读性和效率。
总结: 优化后的代码更易于理解和维护,并且提高了代码的执行效率。建议在编写代码时,尽量采用简洁、可读性强的代码风格,以提高代码质量。
原文地址: http://www.cveoy.top/t/topic/lrnH 著作权归作者所有。请勿转载和采集!