我正在嘗試將資料存盤在 .txt 檔案中,然后將其轉換回 Javascript 串列或陣列,無論您如何稱呼它。
txt檔案中的資料:
[{ firstName: "John", lastName: "Carpenter" },
{ firstName: "Dav", lastName: "Douglas" }]
然后我試圖使它成為一個串列變數:
// my variable
var people = []
// read data from txt file
fs.readFile("./data/data.txt", "utf-8", (err, data) => {
if (err) { console.log(err) }
console.log(data, typeof(data));
people = data
})
有沒有辦法將它從字串轉換為陣列?
uj5u.com熱心網友回復:
這是一個糟糕的解決方案,但只有當您無法更改輸入的格式時,它才可能可行,但請確保您永遠不會在檔案中包含用戶輸入或外部輸入(如 webrequests),因為它將作為javascript。
除非您知道自己在做什么,否則不要使用它!
顯示代碼片段
var data = '[{ firstName: "John", lastName: "Carpenter" },{ firstName: "Dav", lastName: "Douglas" }]'
var people = eval(data)
console.log(people);
body {
background : red;
color: white;
margin-top:0px;
padding-top:0px;
}
h1 {
margin-top:0px;
padding-top:0x;
}
<marquee><blink><h1>EVAL IS EVIL - EVAL IS EVIL - EVAL IS EVIL - EVAL IS EVIL - EVAL IS EVIL</h1></blink></marquee>
你想使用什么
確保檔案的內容是正確的 JSON。目前不是。使用 javascript 生成檔案時,在要寫入檔案的變數/陣列上使用JSON.stringify。
然后資料將更改為
[{ "firstName": "John", "lastName": "Carpenter" },
{ "firstName": "Dav", "lastName": "Douglas" }]
然后你可以使用JSON.parse()來解碼檔案中的資料。
var data = '[{ "firstName": "John", "lastName": "Carpenter" },{ "firstName": "Dav", "lastName": "Douglas" }]'
var people = JSON.parse(data);
console.log(people);
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/402026.html
標籤:javascript 节点.js
