gpt4 book ai didi

java - JSON Stringify 返回 null,但 document.write 正确打印

转载 作者:行者123 更新时间:2023-12-01 14:47:33 26 4
gpt4 key购买 nike

我正在尝试为crawljax编写一个运行一些javascript代码的插件,如下所示:

String result = browser.executeJavaScript(script).toString();

和脚本代码:

function getElementPosition(id) {
var element = document.getElementById(id);
return JSON.stringify(elementpos(findPosX(element), findPosY(element)));
}

function elementpos(x, y) {
elementpos = new Object();
elementpos.x = x;
elementpos.y = y;
return elementpos;
}


return getElementPosition("foo");

它成功返回,但结果始终为 null,即使我使用 document.write 打印出相同的内容,我也会得到一个格式良好的 JSON 字符串

{"x":8, "y":24}

我是不是误会了什么? JSON 字符串和 java 会发生一些奇怪的事情吗?我在 javascript 方面没有太多经验,所以我不可以就这样返回吗?

我正在 google chrome v. 25 上测试此功能

注意:我认为这与 Crawljax 本身没有任何关系,因为有一个单独的插件(由其他人编写),它也有一个返回 JSON 字符串的脚本,但这似乎工作得很好。 ..

最佳答案

JavaScript 对 new Object() 过敏; 采取一种捷径,尝试下面的方法,可能会解决;

 return JSON.stringify({x:findPosX(element), y:findPosY(element)});

使用 new Object(); 语法创建的对象在 JavaScript 中带来了许多奇怪的问题。

关于java - JSON Stringify 返回 null,但 document.write 正确打印,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15265218/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com