我需要声明一个数组
我需要保留添加到其中的每个项目,即使重新加载页面,也应该永远保留在那里,这可能吗? var arr=[]; arr.push('id');
像这样,但存储的项目不应该被替换。
最佳答案
回到绘图板,这就是网络现在的工作方式:)
如果重新加载页面,所有内容都会丢失,所有 JS 代码、所有 JS 变量值等。Web 在设计上是无状态的。
有多种方法可以实现这一点:要么存储在服务器中并在每个页面请求时将其加载回来,要么基于浏览器的技术需要更多的知识,因为它们更先进。
关于基于浏览器(客户端)的技术:我能想到的一种方法是将您的数据存储在 cookie 中。您可以阅读here 。 Cookie 保存在您的浏览器上,并在您的浏览 session 中保持事件状态。尽管如此,这是一种非常脆弱的方法:人们可以轻松删除它们,甚至将它们全部屏蔽。
更好的方法是 HTML5 本地存储 API。尝试阅读 here或here或者谷歌一下。人们仍然可以删除它,而且它实际上只附加到您的个人浏览器(更换计算机?您丢失了它,它是本地保存的)
无论如何,你必须三思而后行,真正尝试理解服务器+客户端如何工作以及在哪里保存东西。如果该数据非常重要,则应将其保存在服务器上,这是确保其安全和保存的唯一方法。
关于javascript - Angular js中可以像静态数组一样吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35480998/