外部javascript文件是否在HTML页面之间重新加载?

外部javascript文件是否在HTML页面之间重新加载?,javascript,html,Javascript,Html,我正在开发一个基本的HTML/CSS/JavaScript测试网站 我使用外部JavaScript从JavaScript中的HTML表单收集数据,如下所示: var userInfo = []; function savePerson(form) { userInfo[0] = form.store.value; userInfo[1] = form.employeeId.value; userInfo[2] = form.fName.value; userInf

我正在开发一个基本的HTML/CSS/JavaScript测试网站

我使用外部JavaScript从JavaScript中的HTML表单收集数据,如下所示:

var userInfo = [];
function savePerson(form)
{
    userInfo[0] = form.store.value;
    userInfo[1] = form.employeeId.value;
    userInfo[2] = form.fName.value;
    userInfo[3] = form.lName.value;
};
这个很好用


现在,我需要转到另一个HTML页面,但将其保留为数组中的值。JavaScript是否在HTML文件之间重新加载?如果是这样,如何在多个页面中保留脚本中的值

必须将它们存储在客户端或服务器端

对于服务器端存储,您必须通过ajax将数据发送到服务器,然后将其保存在任何类型的数据库中

在客户端,您可以将数据存储在cookies、localstorage、indexeddb或websql中

一个简单的解决办法是:

localStorage.setItem('myPerson', JSON.stringify(userInfo));

可以使用html5的文件保存功能将数组保存为.js文件。然后在另一个html页面中,您将js文件作为外部脚本加载。

如果使用敏感信息,您可能希望使用后端服务来存储和检索此类数据,但在大多数情况下可以使用本地存储或cookie

以下是使用本地存储的示例

设置项目:

localStorage.setItem('userInfo', userInfo);
var userInfo = localStorage.getItem("userInfo");
然后在下一页中使用此选项获取项目:

localStorage.setItem('userInfo', userInfo);
var userInfo = localStorage.getItem("userInfo");
使用本地存储

//save datas:
localStorage.setItem('data', JSON.stringify(info));


//get datas:
var data=localStorage.getItem('data');

只有将这些值保存在cookie(或
LocalStorage
)中,或以表单数据/querystring的形式发布,才能执行此操作。后者是一种非常糟糕的测验方式。我相信这将是最简单的解决方案,数据不是超级机密,因此服务器端可能有点过火。