返回免费在线工具集合

AI 重复代码检测

判断两段代码是否真重复,区分“文字相似”与“逻辑等价”,可输出抽取重构方案。

AI开发 独立定制 输出:文本 免费使用 发布时间: 阅读量:7 作者:马慧
正在加载工具…

两段代码并排贴齐

邵允中在跨境物流 SaaS 的订单页看到 calcFreight,结算页又有一份 getShippingFee,变量名全不一样,怀疑是同一套运费逻辑。第一个文本框贴订单页那段,第二个贴结算页那段,都要给完整函数;首重续重的三元、超距按 50 公里进位、西北 12 东北 9 的区域附加费,两份写法一一对应。只贴片段会漏掉分支外的默认值。

粘贴代码 A

输出重点选重构档

"输出重点"取"重构",这一档才给能直接抄的合并代码,选"判定"只回一句结论。"AI 生成"按下后约二十秒出四节:重复判定、重复片段对照表、差异说明、重构方案。结论写"逻辑等价度接近 100%",判为重复且行为未变。文字相似度和逻辑等价是两回事,把变量名全改一遍前者会掉,后者不变,工具把两者分开评了。

粘贴代码 B

差异分清实质与命名

"差异说明"把不同分成两类。参数 weight/distance/region 对 w/d/area、局部变量名、const 对 var、两个函数名,都算"非实质差异",不影响结果。真正要确认的是区域附加费:旧代码用 if/else if 只给两个区域赋值,其余落 0;重构用 REGION_FEE[region] || 0,"未配置"和"配置为 0"在这里同值,业务若将来要区分就得改。"哪个是对的"这句标注着需业务确认。

选输出重点

合并前核魔法数字

方案抽出 const REGION_FEE = { northwest: 12, northeast: 9 };,新建 calcShippingFee 供两处调用,旧函数名留成薄封装转调,分支换成数据驱动免得区域一多就膨胀。var 的变量提升眼下不触发,工具仍标了维护隐患。1、8、2、100、50、5、12、9 这些魔法数字合并时最易漏改,"复制"或取一份 TXT 回来先逐个对,再查"仓库里还有第三份"。

查看判定与重构方案

企业知识网( www.qiyezhishi.com )提供的结果为参考性内容,不构成法律、税务或投资建议。具体请以主管部门口径与最新法规为准。

本文作者

马慧,企业知识网站长,10年+SEO/GEO经验,精通白帽SEO与网站优化,擅长全网营销与短视频引流,曾打造日均万IP的SEO博客(小小课堂网)、十万IP泛流量资讯网站(错误博客)。自川来熟食连锁店长,5年熟食生产与管理经验,精通抖音本地生活服务运营。