javascript - 添加 key 时出现问题 : value pair to array and posting it to file

标签 javascript node.js

为了澄清标题,我想将 var 1: var 2 作为键值对传递。但是,每当我这样做时:

fileobject.add = {var 1: var 2}

其中fileobject是数组的名称,使用“:”会自动将文件名更改为文本。

我的其余代码:

var FileHasher = require("./FileHasher");

if (process.argv.length < 3) {
  console.log("Program file and one argument are required for this program.");
  process.exit(1);
}

var filename = process.argv[2];
var fs = require('fs');
var data = fs.readFileSync("../sha1.json", "UTF-8"); // read sha1.json contents
var fileobject = JSON.parse(data); // create JS object from file
var file = fs.readFileSync(filename, "UTF-8"); // read file contents

console.log(data); // print all current key-value pairs

fs.createWriteStream("../sha1.json");

var filesha1 = FileHasher(file);
console.log(filesha1);

fileobject.push = (filename: filesha1);
console.log(fileobject);

fs.writeFile("../sha1.json", JSON.stringify(fileobject), function(err) {
  if (err) {
    return console.log(err);
  }
  console.log("data saved");
});

为了澄清,FileHasher 接受给定的任何输入并返回 sha1。

我遇到的另一个问题是将更新的信息发布到 sha1.json;我当前的代码只是将我从中获取的相同数据发布回其中,即使 console.log(fileobject) 在已导入的数据旁边显示“pushed: * sha1 value *”,但 console.log (data)仅显示从sha1.json读取的信息,不显示我推送的任何信息。

非常感谢您的帮助!

最佳答案

JavaScript object literals{} 分隔(U+007B:左大括号/U+007D:右大括号),而不是 ()(U+0028:左括号/U+0029 :右括号)。

关于javascript - 添加 key 时出现问题 : value pair to array and posting it to file,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31433623/

相关文章:

node.js - 同步处理新的 TCP 连接

javascript - Mocha : Error Timeout of 2000ms exceeded

javascript - l20n:服务器端 Node resolveValues错误

javascript - 如何将前端值传递给 JavaScript 计数器?

node.js - 没有定义require怎么解决?

node.js - Node 立即被 kill -MacOS

node.js - TypeError : io. sockets.clients 不是函数

javascript - 在不使用全局变量的情况下切换 Javascript/jQuery 的适当方法?

javascript - Jasmine.js 比较数组

javascript - 平均堆栈 : How to create routes for nested relationships?