如何在不需要服务器交互或cookie的情况下将值从一个Javascript文件传输到另一个JS文件

How do I Transfer values from one Javascript file to another JS file without the need of server interaction nor cookies?

本文关键字:文件 一个 Javascript 另一个 传输 JS 服务器 不需要 交互 情况下 cookie      更新时间:2023-09-26

我想在不需要cookie或JS中的服务器交互的情况下传输变量值,有其他方法吗?例如,如果我有foo.js和一个变量fooVar=10,bar.js和barVar,那么有没有可能在没有cookie的情况下实现barVar=fooVar?

根据您的注释,您可以将要访问的变量存储在第二页的查询字符串中,或者存储在第三页的查询串的哈希中。使用该查询字符串加载第二页。

例如在查询字符串中:http://example.com/bar.html?myvar=5

或者例如在查询字符串的散列中:http://example.com/bar.html#?myvar=5

使用哈希可能是最好的选择,因为你的服务器很可能会忽略你在哈希中输入的任何内容(除非服务器被编程为其他方式)。

然后,您可以在bar.html加载的javascript中使用window.location.hash来获取哈希字符串,并对其进行解码以获取存储的变量。。。

您可以使用HTML5 localStorage。localStorage将您的数据保存到web浏览器中。与$_COOKIE的区别在于,数据只能通过带有javascript的web浏览器访问,并且不会在每个HTTP请求中发送。这里有一个例子链接。

您说要将变量的值从一页传递到下一页。你为什么不使用网址
在第二个页面的url中添加类似?fooVar=10的内容,然后使用第二个网页上的第二个脚本解析url。

以下是如何在第二个脚本中解析url的示例
如何获取查询字符串值