您是否使用返回的值?
tl; dr:避免分配您从未使用过的值。>问题
这可能会使他人感到困惑,并使代码更难维护。> 有时,在调试时,您可以分配时间变量以进行更好的检查。
> 当您将执行分配给对象属性
时,这也会发生这种情况。>这也是突变对象的标志,因为如果您删除了分配,则仅保留副作用。
突变物体会引起意外的副作用,从而使跟踪变化更加困难。示例代码
错误的
正确的
function updateUserName(user, newname) { user.name = newname; return user; } function performMaintenance(existingUser) { let updatedUser = updateUserName(existingUser, "Bobby Peru"); // Other tasks } // The variable updatedUser is never used
function updateUserName(user, newname) { user.name = newname; // Just side effects without explicit return } function performMaintenance(existingUser) { updateUserName(existingUser, "Bobby Peru"); // Other tasks }
bloaters
等级
人工智能一代
ai工具在误解意图时很少生成未使用的变量分配。用清晰的说明可以标记未使用的变量并建议删除的AI辅助重构,但可能并不总是理解是否应该使用返回值。
>试试看!
如果您不需要,请勿分配返回值。
如果该方法应返回有意义的东西,请确保您使用它。
>关系
埃文·德米科利(Evan Demicoli)的照片
>
Martin Golding
本文是CodeSmell系列的一部分。
以上是代码气味 - 未使用的本地任务的详细内容。更多信息请关注PHP中文网其他相关文章!