如何发挥「;Java的公共静态变量;用JavaScript还是网页?

如何发挥「;Java的公共静态变量;用JavaScript还是网页?,javascript,Javascript,在我的主页上,我必须使用登录用户的名称设置cookie。cookieset和get部分必须在JS中完成。在随后的子页面中,我必须使用集合变量名检索cookie(用户名) 我如何存储用户名/cookie名称,以便在所有页面上都可以公开访问它?这个用户名显然会随着每个新用户的变化而变化,并且不是固定不变的 我曾尝试使用外部JS文件来实现这一点,但在每个新页面中,该值都会重置为默认值,这是我不希望看到的 我的问题的确切解决方案类似于由以下人员完成的工作: public static variable

在我的主页上,我必须使用登录用户的名称设置cookie。cookie
set
get
部分必须在JS中完成。在随后的子页面中,我必须使用
集合
变量名检索
cookie(用户名)

我如何存储用户名/cookie名称,以便在所有页面上都可以公开访问它?这个用户名显然会随着每个新用户的变化而变化,并且不是固定不变的

我曾尝试使用外部JS文件来实现这一点,但在每个新页面中,该值都会重置为默认值,这是我不希望看到的

我的问题的确切解决方案类似于由以下人员完成的工作:

public static variable

在Java中(不是最终版本)。我想在JS中实现这一点。

Javascript中没有这样的东西,除非您使用存储API(客户端存储、cookie或类似的东西)。原因是当你从一个页面移动到另一个页面时,这对浏览器来说并不特别重要。它抹去它的板岩,重新开始,保留像cookies之类的显式存储的数据,并删除动态创建的所有其他内容。简而言之,如果你想让每个页面都知道名称,你必须在每个页面的代码中包含名称(手动或通过脚本)。

我不太了解你的应用程序。在javascript中有函数原型。在函数原型中,您可以这样声明“静态”成员: 函数C(构造函数的参数){ C.无定向变量=5; }
警报(C.aStaticVariable)//随处可见

请发布不起作用的代码。你应该能够得到这个工作与饼干;您可能没有正确设置它们。请注意:Javascript在cookie中没有与
公共静态
最终
等效的内容。不过,您的代码可以使用一些
getter
/
setter
功能。这就是为什么我们需要查看你的代码。我知道。但是,OP希望跨页面保留cookie的名称。即使cookie在那里,如果没有名称,JS实际上也无法访问它。我只是说,您必须知道名称,因为JS变量不会跨页面传输。我不是这样理解的(为什么存储的变量名称会更改?您可以在Javascript中这样做吗?。@JaredFarrish:Sajid正确地解释了我的问题。使我的应用程序工作的当前代码如下所示。我有一个外部JS文件---externalfile.js的内容--function SetCookie(cookieName、cookieValue、nDays){//body}function getCookie(c_name){//body}。。外部文件已链接。主页将其用作Setcookie(“用户”,NumberOfDays);在这里,cookie是使用常量变量名“User”设置的,这是我不想要的。所有子页面,使用getCookie(“用户”);相反,我想在external.js中声明一个变量,在主页中为它指定一个cookie名称,并将其用作cookie名称。通过这个,我可以使用登录用户的用户名来设置和读取cookie。在我当前的实现中,cookie变量名是常量,我需要在每个页面中指定它。如果由于某种原因我不得不更改变量名,那将很烦人。我希望现在我能更清楚地回答这个问题。我希望我的代码中有这样的内容。我尝试了你的方法,它只在页面内有效,值不会在页面间持久存在。我希望cookie变量名保持不变,以便我可以引用它们来跨页面设置或检索cookie。虽然我将此代码放在一个外部JS文件中,并包含在所有地方,但在页面中无法访问该变量。