【发布时间】:2020-08-24 22:08:08
【问题描述】:
我正在设计这个游戏,我将 1 或 0 值作为正确或错误答案存储在变量 q1 - q6 的本地存储中。
由于本地存储不将数字存储为整数,因此在我的主页加载之前,我会解析所有变量以获取整数。虽然其中一些还没有被声明为任何东西,所以它们似乎是 NaN 或 null,所以当我尝试计算所有变量的加法时,它给了我 NaN,除非我使用这个乱七八糟的代码。
if (isNaN(totalpoints)) totalpoints = 0;
if (localStorage.getItem("points") === null){
localStorage.setItem("points", "0");
}
var q0 = parseInt(localStorage.q0);
var q1 = parseInt(localStorage.q1);
var q2 = parseInt(localStorage.q2);
var q3 = parseInt(localStorage.q3);
var q4 = parseInt(localStorage.q4);
var q5 = parseInt(localStorage.q5);
var q6 = parseInt(localStorage.q6);
if (isNaN(q0))q0=0;
if (isNaN(q1))q1=0;
if (isNaN(q2))q2=0;
if (isNaN(q3))q3=0;
if (isNaN(q4))q4=0;
if (isNaN(q5))q5=0;
if (isNaN(q6))q6=0;
var totalpoints = totalpoints + q0 + q1 + q2 + q3 + q4 + q5 + q6;
localStorage.setItem("points", totalpoints);
我正在尝试一种方法,我可以将这段代码简化为几行,使用可能的变量循环或其他什么? 任何人都可以给我任何方向感,让我知道如何解决这个问题或帮助我吗? 我只是不确定,因为我似乎必须单独解析本地存储变量? 谢谢
【问题讨论】:
标签: javascript variables math nan parseint