js变量可以var a=a+1这样的定义吗?

var SteepJD;
        var dou=FlatJD;  
        if(dou>180)
        {
            dou=180;
        }
        var dou2=parseFloat(dou)+90;
        if(dou2>180)
        {
            var dou2=dou2-180;
        }
        if(dou2==180)
        {
            var dou2=0;
        }
        var SteepJD=dou2;

这样可以定义变量可以的吗?求大神指导

阅读 7.7k
2 个回答

可以这样定义,只是这种定义没有什么实际意义。在解析var a = a + 1;时,先赋值,而此时的a的值是undefined,a+1的最终结果就变成了非数值NaN了。所以最后a为NaN。你的代码稍微改下就行了。

var steepJD;
var dou = flatJD;  
if(dou > 180){
    dou = 180;
}
var dou2 = parseFloat(dou) + 90;
if(dou2 > 180){
    dou2 = dou2 - 180;
}else if(dou2 == 180){
    dou2 = 0;
}
steepJD = dou2;

有两个变量被重复声明了。

dou2前面声明过了,不用再写 var ,直接赋值就可以

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题