What exactly does “variable initializer is redundant” mean?

随时随地阅读更多技术实战干货,获取项目源码、学习资料,请关注源代码社区公众号(ydmsq666)

from:https://stackoverflow.com/questions/38853027/webstorm-unresolved-variable-or-type-sails-module-export

So I am using Webstorm IDE for some JavaScript and I believe it uses JSLint to inspect the code. I have a bunch of variable initializer is redundant warnings. I can't find anything about what it exactly means in terms of what I need to fix.

Example:

function calcPayNow(){
    var payNowVal = 0;
    --snip---
    payNowVal = (Math.round(tec * x) - Math.round(allpmts * x)) / x;
   --snip--
}

answer:

It means that there is no purpose to assigning 0 because it is never used before you assign a different value.

I would change it from:

var payNowVal = 0;
--snip---
payNowVal = (Math.round(tec * x) - Math.round(allpmts * x)) / x;

to

--snip---
var payNowVal = (Math.round(tec * x) - Math.round(allpmts * x)) / x;

@AnkitTanna Who recommends declaring your variables at the top of the block? Javascript isn't C89. Irecommend declaring variables no earlier than they are needed, and initializing them when declared. Often times my practice completely avoids the issue at hand here, and allows the variable to be declared as const(in ES2015) and helps with writing correct code, verifying the correctness of the code, and comprehending the code when reading it. – dsh Dec 12 '16 at 17:42

意思在使用它之前,给他分配默认值0是没有必要的,上面的英文相信大家都没看得懂。

  • 5
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 12
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值