javascript - Chrome 发送请求错误 : TypeError: Converting

我有以下...

chrome.extension.sendRequest({
  req: "getDocument",
  docu: pagedoc,
  name: 'name'
}, function(response){
  var efjs = response.reply;
});

它调用以下..

case "getBrowserForDocumentAttribute":
  alert("ZOMG HERE");
  sendResponse({
    reply: getBrowserForDocumentAttribute(request.docu,request.name)
  });
  break;

但是,我的代码从未到达“ZOMG HERE”,而是在运行 chrome.extension.sendRequest

时引发以下错误
 Uncaught TypeError: Converting circular structure to JSON
 chromeHidden.JSON.stringify
 chrome.Port.postMessage
 chrome.initExtension.chrome.extension.sendRequest
 suggestQuery

有人知道是什么原因造成的吗?

最佳答案

表示你在请求中传入的对象(我猜是pagedoc)有一个循环引用,类似于:

var a = {};
a.b = a;

JSON.stringify 不能像这样转换结构。

注意:DOM 节点就是这种情况,它们具有循环引用,即使它们没有附加到 DOM 树。每个节点都有一个 ownerDocument,它在大多数情况下引用 documentdocument 至少通过 document.body 引用 DOM 树,而 document.body.ownerDocument 引用回 document 再次,这只是 DOM 树中多个循环引用中的 一个

关于javascript - Chrome 发送请求错误 : TypeError: Converting circular structure to JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4816099/

相关文章:

javascript - 在对象数组中查找属性的最大值

java - jackson VS。 Gson

php - 在 PHP 中检查字符串是否为 JSON 的最快方法?

java - 我应该将 jackson 的 ObjectMapper 声明为静态字段吗?

json - 如何将 JSON 对象转换为 TypeScript 类?

json - 在 JSON 中表示 null

ruby - 在 Ruby 中解析 JSON 字符串

ios - 在 iOS 中从 NSDictionary 生成 JSON 字符串

python - 使用 Python 将 JSON 字符串转换为 dict

javascript - JSON:为什么正斜杠转义?