首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在两个javascript文件之间共享var

在两个javascript文件之间共享var
EN

Stack Overflow用户
提问于 2018-08-28 08:11:06
回答 2查看 47关注 0票数 1

我一直在尝试寻找一种方法来在不同html文件使用的js文件之间共享变量( js文件不在同一html文件中),但我似乎找不到方法……

我想在a.html文件中的a.js中创建一个username变量,然后将其添加到服务器上的数据库中,然后转到b.html并访问b.js中的username。(我已经让所有其他代码都正常工作了)。

我尝试过会话/本地存储,但Atom (我的文本编辑器)显示'localStorage未定义‘,我也尝试使用emac6导出/导入/请求,但Atom显示相同的内容:’关键字导出/s未定义‘。有什么想法吗?

//a.html:-script脚本“src/a.js”--/src=-

//a.js : var username = "john";

//b.html:-script src="src/b.js"- -/脚本-

//b.js :console.log(用户名);

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-08-28 08:17:04

如果您从一个页面(a.html)导航到另一个页面(b.html),并且希望在每个页面上使用的两个脚本之间共享/访问数据(例如username = 'john'),那么您可能需要考虑持久化这些数据来实现这一点。

有很多方法可以做到这一点,但是一种简单的方法是使用localStorage应用编程接口,如下所示:

a.html,src/a.js

代码语言:javascript
复制
var username = "john";
localStorage.setItem('username', username) // Persists to browser storage

b.html,源/b.js

代码语言:javascript
复制
var username = localStorage.getItem('username') // Retrieves from browser storage
console.log(username);

请注意,这取决于顺序-要存储值,必须在b.js之前运行a.js,然后将其记录到控制台。

有关localStorage API, see the MDN docs的更多信息

票数 0
EN

Stack Overflow用户

发布于 2018-08-28 10:56:16

您还可以使用cookie在任意数量的JavaScript中传递变量。从数据创建者设置cookie:

代码语言:javascript
复制
document.cookie = "username=John Doe; expires=Thu, 18 Dec 2013 12:00:00 UTC";

然后从其他人那里阅读它:

代码语言:javascript
复制
var x = document.cookie;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52048429

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档