我在访问哈希中的键时遇到了麻烦(如果很重要,我正在Node.js中编程)。

返回状态时我有一个回调,并且这样的回复:

client.metadata(folder, options, function(status, reply){
  //console.log(reply)
  console.log(reply)
  console.log("New hash: " + reply['hash']);
});


问题是,reply ['hash']返回未定义。甚至reply.hash是未定义的。如何访问哈希键作为回复?

我记录了回复,它是:

{
  "hash": "e533d2c19d236d0d4f84e2a9666659e1",
  "revision": 802,
  "rev": "32203a97cb5",
  "thumb_exists": false,
  "bytes": 0,
  "modified": "Wed, 04 Jan 2012 02:39:18 +0000",
  "path": "/foo",
  "is_dir": true,
  "icon": "folder",
  "root": "dropbox",
  "contents": [],
  "size": "0 bytes"
}


但是当我像上面的示例一样访问哈希作为答复时,它是:


  新哈希:未定义

最佳答案

回复可能是字符串类型,您需要使用JSON.parse(reply)将其从JSON转换为...

使用console.log(typeof reply)查看回复的类型,然后查看回复内容

关于javascript - Javascript哈希(node.js),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8766430/

10-16 13:06