javascript - 你能永久地添加到 Javascript 中的数组吗?

标签 javascript

请原谅,我对编程非常陌生,尤其是 Javascript。我基本上得到了一个数组,如下所示。

var recipes = [
    { "recipeName":"Recipe1" , "ingredient1":"Recipe1Ingredient1" , "ingredient2":"Recipe1Ingredient2" , "ingredient3":"Recipe1Ingredient3"},
    { "recipeName":"Recipe2" , "ingredient1":"Recipe2Ingredient1" , "ingredient2":"Recipe2Ingredient2" , "ingredient3":"Recipe2Ingredient3"},
];

在一个页面上,用户可以搜索食谱。另一方面,他们可以通过 HTML 表单将食谱添加到数组中。我有以下将新数据推送到数组的内容。

recipes.push({"recipeName":newRecipeName , "ingredient1":newIngredient1 , "ingredient2":newIngredient2 , "ingredient3":newIngredient3});

这最初工作正常,但如果我刷新页面或返回查找页面,新配方将从数组中删除。我希望将新配方永久添加到数组中。

我猜这个问题的解决方案并不是那么简单,但我已经研究了一段时间,并且进行了大量搜索都无济于事。有人能指出我正确的方向吗?再次为我的缺乏经验道歉,我对编程很陌生。

最佳答案

这里您需要牢记的主要事情是,每次刷新页面时,它都不知道前一页上的数据。正如 a previous comment 中提到的,持久存储 正是您要寻找的。这可能以完整的 (NoSQL/RDBMS) 数据库的形式出现,或者以仅存储在浏览器中的其他一些半永久形式出现。

您可以开始使用完整的数据库,或者如果您想要更轻量级的东西,您可以使用 local storagecookies 。需要注意的一件事是,除非您在服务器端实现某些东西,例如:数据库,否则更改将仅对用户持久,并且只要他们不清除缓存。

关于javascript - 你能永久地添加到 Javascript 中的数组吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21144565/

相关文章:

javascript - 缩短 JavaScript 代码预告片

javascript - JavaScript JIT 的显式控制?

javascript - 如何在 React Native Expo 项目中从一个屏幕转到另一个屏幕?

javascript在下拉值更改时将属性设置为只读

javascript - 添加类/删除类到子类?

javascript - 更改存储的 div ID 的样式

javascript - 无法在 Safari 中加载跨源图像(来自 CloudFront)

javascript - 如何防止 DOM 子级继承 addEventListener?

javascript - 幻灯片 php 图片加载不起作用

javascript - Bootstrap 多列轮播平滑滚动/缓动