2015-02-06 96 views
2

我正在處理所有數據存儲在本地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

回答

0

你的問題本質上是做文件/上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。

1

隨着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

相關問題