【基礎篇】js對本地文件增刪改查--改


前置條件:

1. 本地有安裝node,點擊傳送門

項目目錄:

  1. msg.json內容

{
    "data": [
        {
            "id": 1,
            "name": "aa"
        },
        {
            "id": 2,
            "name": "bb"
        },
        {
            "id": 3,
            "name": "cc"
        }
    ],
    "total": 3
}

2. revise.js

// 若找不到該模塊,則用npm i fs安裝一下即可
var fs = require('fs');

// 此處為模擬數據,后期會從頁面傳數據
var params = {
	"name": "hh"
}

//寫入json文件選項
function reviseData(id, params) {
	//現將json文件讀出來
	fs.readFile('data/msg.json', function(err, data) {
		if (err) {
			return console.error(err);
		}
		var msg = data.toString(); //將二進制的數據轉換為字符串
		msg = JSON.parse(msg); //將字符串轉換為json對象

		//找到對應的數據id進行刪除
		for (var i = 0; i < msg.data.length; i++) {
			if (id == msg.data[i].id) {
				for (var key in params) {	//此處的key就是params數據鍵值對中的鍵,也就是將params中傳過來的數據根據鍵名去更新原來此id的數據
					if (msg.data[i][key]) {
						msg.data[i][key] = params[key];
					}
				}

			}
		}

		msg.total = msg.data.length; //刷新一下總數,以后分頁會用上
		console.log(msg);
		var str = JSON.stringify(msg, "", "\t"); //因為nodejs的寫入文件只認識字符串或者二進制數,因此進行必要的轉換
		fs.writeFile('./data/msg.json', str, function(err) {
			if (err) {
				console.error(err);
			}
			console.log('----------修改成功-------------');
		})
	})
}

//執行新增數據方法;
reviseData(1, params)

3. 用node執行revise.js,效果如下圖:

可以發現,數據已修改。

 

【基礎篇】

js對本地文件增刪改查--增

js對本地文件增刪改查--刪

js對本地文件增刪改查--改

js對本地文件增刪改查--查

 

 

【參考資料】

前人栽樹后人乘涼,敬編程界的先行者!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM