JS - 在JSON文件中插入,删除和添加数据

问题描述:

我正在处理所有数据存储在本地JSON文件中的JavaScript项目,我已经能够读取此文件中的信息,但我似乎在如何添加和修改这个JSON文件的信息时会丢失,有人可以请我指出正确的方向。JS - 在JSON文件中插入,删除和添加数据

谢谢。

+0

首先,欢迎来到Stack Overflow。其次,你可以请张贴一些代码,以便我们知道我们在看什么? – 2015-02-06 19:21:04

+0

你在服务器端通话吗?你在使用nodejs吗? – satchcoder 2015-02-06 19:21:43

+0

正确的方向是将您的文件加载到JSON对象中,然后将更多数据(obj.newProp ='something'; obj.existingProp.newSubProp ='somethingElse')添加到该对象并序列化回文件。或者,如果您需要将文件作为纯文本处理,则需要非常小心,但我不会推荐这种方法。 – 2015-02-06 19:24:33

你的问题本质上是做文件/上JSON(字符串,数据结构格式)的组成文件的内容目录I/O(读&写)。特别是,你想用Javascript将内容写回文件;那么,目前,..

没有一个网络标准,或批准使用javascript写文件的规范。现代浏览器继续实施他们自己的API。

这些API使用File API(特别是用于blob的接口)的各个方面。 文件API的状态仍然是“正在进行中”;该文件的状态:“最后通话工作草案”。 此重申,有,目前,没有标准化,赞同文件/目录I/O的JavaScript实现

,因为它们是网络规范,他们不建议在生产点;并且不被W3C推荐。


值得注意: 的FileWriter接口从FileSaver接口继承,但只在Chrome的WebKit的执行(这戏现在继承)。 (注意:有人说这个类没有实现FileWriter的构造函数)。

其他以往的解决方案是使用Flash组件作为解决方案来实现“另存为”功能。在转向中,为了实现这些实验性或非标准化规格,不支持的设备/用户代理可以使用polyfill和shims。


对于我这里的项目是否为内部目的而言,这仍然是不确定的。如果您正在构建Intranet应用程序或尝试执行不打算在生产中标准化和/或公开访问的实用程序脚本,那么我建议您查看并使用这些API。

您可以使用parseJSON jQuery function将字符串转换为JSON对象,然后对其进行修改。 然后,您可以使用JSON.stringify JavaScript function将编辑的JSON对象转换为字符串。

随着Jquery,你可以尝试下面的东西,来获取数据,然后你可以操纵它作为Java脚本对象。

<html> 
    <head> 
     <script type="text/javascript" src="jquery-1.9.1.min.js"></script> 
     <script type="text/javascript" charset="utf-8"> 
      function loadJson() { 
       $(document).ready(function() 
        { 
         $.getJSON('file.json', function(json) { 
          console.log(json); 
         }); 
        }); 
       } 
     </script> 
    </head> 
    <body onload="loadJson();"> 

    </body> 
</html> 
+0

考虑OP标记为'jquery' ..你的回答可能与他的情况最相关..虽然,可能有更好的方法.. – 2015-02-06 19:38:45

+1

@BrettCaswell,是的有几种方法来解决这个问题,但我试图按照OP标签提供更贴近的内容。 – RE350 2015-02-06 19:42:04

+0

我知道如何访问和读取JSON文件,我不知道如何存储更改。 – 2015-02-06 22:21:43