可能是一个简单的问题,但我真的不知道这在实践中是好是坏。我正在使用 redux 来管理状态,并且我总是在操作中执行我的逻辑,这些操作采用旧状态,执行一些逻辑和消息缩减器:动作(演示)const updateFilters = (filters) => { filters = filters.map(...);}但我的想法是创建一个新变量:const updateFilters = (filters) => { const newFilters = filters.map(...)}我的问题是: 将参数名称分配给新值(在第一个代码片段中)是否安全而不是一种坏习惯?
1 回答
SMILET
TA贡献1796条经验 获得超4个赞
我认为你应该区分is it safe?
和is it a good practice?
重新分配局部变量安全吗?是的。
重新分配(本地)变量是一个好习惯吗?不一定。
重新分配变量很容易出错,并且会影响程序的可读性。有很多风格指南明确禁止它,因为:
阻止您访问分配给该变量的原始值
造成混乱
我个人的意见是,您可以简单地将每个变量视为不可重新分配,这只会使您的程序更清晰,从而降低意外行为的风险。
对声明为函数参数的变量赋值可能会产生误导并导致混淆行为,因为修改函数参数也会改变参数对象。通常,对函数参数的分配是无意的,并且表明存在错误或程序员错误。
https://eslint.org/docs/rules/no-param-reassign
另请阅读:
添加回答
举报
0/150
提交
取消