繁体   English   中英

Javascript Node.js JSON.parse数组

[英]Javascript nodejs JSON.parse array

我正在上关于udemy的课程,我真的很困惑当notes = JSON.parse(notesString)假定是对象(对吗?)时如何将其作为数组(因为JSON.parse使其成为对象)。

var addNote = (title, body) => {
  var notes = []; // Create empty array
  var note = { // Fetch user input
    title,
    body
  };
  try {
    var notesString = fs.readFileSync("notes-data.json"); //  Get current notes
    notes = JSON.parse(notesString); // convert current notes into object
    console.log("try:", notes.constructor)
  }catch(e){

  }
  console.log(notes)
  notes.push(note);
  fs.writeFileSync("notes-data.json", JSON.stringify(notes));
};

那里需要JSON.parse(),因为fs操作的输出是一个字符串,我们需要将其转换为对象才能正确访问它。 其中的数据是JSON数组,因此我们可以读取它。 在JSON.parse周围添加try catch,因为如果数据不是JSON类型,则将导致错误。

如果文件notes-data.json中的JSON包含JSON数组,即某些内容,例如

[{"one":1}, {"two":2}]

您将从JSON.parse方法获取数组。

如果文件notes-data.json中的JSON包含JSON数组,即某些内容,例如

var data = "[{"one":1}, {"two":2}]";
var result = JSON.parse(data);
console.log(result)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM