我在JavaScript中完成了一个quizgame教程,但我想通过添加来增强它 对它的高分。
高分将包含用户名及其分数。 我不希望将数据保存到数据库,而是保存到外部文件。原因是因为即使你离线我也想玩。
以下是完成测验后显示的代码,它会计算您的分数:
function _(x){
return document.getElementById(x);
}
function thequestion(){
pingvin = _("pingvin");
if(pos >= questions.length){
pingvin.innerHTML = "<h2>You achieved "+correct+" of "+questions.length+" questions correct</h2>";
_("pingvin_status").innerHTML = "Your Quest Has Come To An End";
pos = 0;
correct = 0;
return false;
}
我想当你完成任务时,应该出现一个输入字段和一个提交按钮。单击时,分数和输入字段的值将存储在txt文件中。这就是我需要帮助的地方,如果有人能花点时间帮助我,我将不胜感激。
答案 0 :(得分:3)
我建议你使用localStorage。您无法使用Javascript直接保存文件,只有少数例外情况,例如Chrome's Storage API。
以下是使用localStorage读取和写入数据的基础知识。你想制作一个分数数组,将数组转换为JSON,然后当你读取数据时,你解析你保存的JSON,并以某种方式显示你保存的分数。
if(localStorage){ // make sure the browser supports localStorage
// WRITING DATA
// sample array of scores
var scores = [{"Player 1" : 1000}, {"Player 2":900}, {"Player 3": 800}];
// save the data under the key "scores"
localStorage.setItem("scores", JSON.stringify(scores));
// READING DATA
// if localStorage contains something under the key "scores"
if(localStorage.getItem("scores") != null)
{
// read the data saved in localStorage
var data = localStorage.getItem("scores");
// turn the data from JSON into an array.
var scores = JSON.parse(data);
}
}