⚠️ 保留中间产物,但仍然用高阶函数
一批金额 [120, 80, 200, 150],门槛 100:留下不低于门槛的,各乘 10,再加起来。这正是 l1_basic_11 里用循环做过的那条流水线。把一行版拆成"留得下中间产物"的版本——仍然用 filte
自己写:按场景选风格
把选风格写成一个函数。认不出来就老实说看情况。
⚠️ 混着写也完全正当
一批金额 [120, 80, 200, 150],门槛 100:留下不低于门槛的,各乘 10,再加起来。这正是 l1_basic_11 里用循环做过的那条流水线。外层保留循环、内层用 filter,和纯函数式版对拍。
🔴 函数式多付出的代价,数出来
一批金额 [120, 80, 200, 150],门槛 100:留下不低于门槛的,各乘 10,再加起来。这正是 l1_basic_11 里用循环做过的那条流水线。把 filter 和 map 的回调各包一层计数,数一数额外调了多少次函数,再
改写之前,第一件事该做什么
要把一段命令式代码改写成函数式,动手之前第一件事是【0】。
⚠️ 改写完最该验的是什么
改写完成之后,最该验的是【0】。
四种写法,一个结果
一批金额 [120, 80, 200, 150],门槛 100:留下不低于门槛的,各乘 10,再加起来。这正是 l1_basic_11 里用循环做过的那条流水线。这条路线用过的四种写法,一次全跑: A = [120, 80, 200, 15
第一步:先立基准
一批金额 [120, 80, 200, 150],门槛 100:留下不低于门槛的,各乘 10,再加起来。这正是 l1_basic_11 里用循环做过的那条流水线。改写流程第一步:把原版的结果记下来当标尺。
第二步:先把"挑"写成纯函数
第二步:把过滤那一段写成纯函数,并且确认它没动传进去的列表。
第三步:把"换"也写成纯函数
第三步:转换那一段同样写成纯函数,输出转换后的那几个数。