一、以查询取代临时变量
1.当临时变量保存一个表达式结果,将临时变量的表达式结果逻辑整合
2.将此逻辑放到单独的函数中,返回结果
3.以用途命名创建出来的函数,用此函数取代临时变量所有引用点
二、查询函数的作用
1.解释性(对应用途的函数名称就是良好的注释)
2.可读性(减小父函数的体积,在查询函数中可将逻辑表达式分块)
3.方便重构(当临时变量影响到了重构步骤,用查询函数替代)
三、示例
const month = 7 //7月份
//原init函数
function init() {
const flag = month >=6 && month <= 9
if(flag) {
console.log('这是夏天') //处理逻辑
}
}
init()
//repalce temp with query, 改进后的init函数
function init() {
if(isSummer()) {
console.log('这是夏天') //处理逻辑
}
}
function isSummer() {
const flag = month >=6 && month <= 9
return flag
}
总结
1.查询函数可以有效减小父函数的体积,小体积函数通常易于阅读
2.因为临时变量导致重构困难,可以使用查询函数对临时变量的所有引用点进行替换
犹豫。
行动是治愈恐惧的良药,而犹豫拖延将不断滋养恐惧。 ——佚名