我正在處理所有數據存儲在本地JSON文件中的JavaScript項目,我已經能夠讀取此文件中的信息,但我似乎在如何添加和修改這個JSON文件的信息時會丟失,有人可以請我指出正確的方向。JS - 在JSON文件中插入,刪除和添加數據
謝謝。
我正在處理所有數據存儲在本地JSON文件中的JavaScript項目,我已經能夠讀取此文件中的信息,但我似乎在如何添加和修改這個JSON文件的信息時會丟失,有人可以請我指出正確的方向。JS - 在JSON文件中插入,刪除和添加數據
謝謝。
你的問題本質上是做文件/上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>
考慮OP標記爲'jquery' ..你的回答可能與他的情況最相關..雖然,可能有更好的方法.. – 2015-02-06 19:38:45
@BrettCaswell,是的有幾種方法來解決這個問題,但我試圖按照OP標籤提供更貼近的內容。 – RE350 2015-02-06 19:42:04
我知道如何訪問和讀取JSON文件,我不知道如何存儲更改。 – 2015-02-06 22:21:43
首先,歡迎來到Stack Overflow。其次,你可以請張貼一些代碼,以便我們知道我們在看什麼? – 2015-02-06 19:21:04
你在服務器端通話嗎?你在使用nodejs嗎? – satchcoder 2015-02-06 19:21:43
正確的方向是將您的文件加載到JSON對象中,然後將更多數據(obj.newProp ='something'; obj.existingProp.newSubProp ='somethingElse')添加到該對象並序列化迴文件。或者,如果您需要將文件作爲純文本處理,則需要非常小心,但我不會推薦這種方法。 – 2015-02-06 19:24:33