我正在制作一个JavaScript游戏,但是(不是基于浏览器的),但是我使用的引擎有一个错误,当您退出游戏时,它会删除存储的数组。因此,为了通过,我想将数组存储为变量,然后在加载游戏时将其转换回数组。
目前,我的游戏只有1个数组。
有人建议使用此代码,但无法正常运行,因为当我运行脚本以在不同的行上打印数组的每个元素时,它会在第一行上打印第一个元素,然后在第二行上打印其余的像这样的代码:element1,element2,element3
这是该人建议的代码:
该代码在每次更新阵列时运行。
在这里,数组是“ questsActive”,存储的变量是“ questsActiveVar”。
questsActiveVar = questsActive.toString();
questsActiveVar = questsActiveVar.replace(",", "\",\"");
questsActiveVar = "questsActive=new Array(\"".concat(questsActiveVar,"\")");
只要游戏加载,它就会运行;它重新创建了
已删除
eval(questsActiveVar);
最佳答案
您仅用替换调用替换第一项。
尝试这个:
questsActiveVar = questsActiveVar.replace(/,/g, "\",\"");