我有一个小问题。当我在地址栏中执行JavaScript时,我称之为的功能会返回值。该页面移至新页面。为了防止这种情况,我在末尾使用一个空隙(0)。但是,一旦完成,我如何捕获函数的返回值。

例如:

javascript:function f(){return 'success'} f();void(0);

当我在地址栏中键入此时,如何捕获返回值?

有帮助吗?

解决方案

这样的事情呢:

javascript:function f(){return 42}; var r = f(); alert("The result is " + r); void(0);

其他提示

因此,如果我明白这是您想要的:

  • 在您创建的页面上,您想在地址栏中输入JavaScript
  • 在页面中 - 您想从地址栏中输入的函数捕获结果

我不确定我是否理解您想这样做的原因,因此,如果您描述我的答案也许不是很好。

但是,如果您创建了一个页面上称为test()的函数,并且在地址栏中输入JavaScript时在该页面上,您可以将数据发送到该函数中,从而捕获该值参数

javascript:function f(){return 'success'} test(f());void(0);

如果您在页面上有此JavaScript,则将被调用,并出现带有文本“成功”的警报。

<script type="text/javascript">
function test(x)
{
 alert(x);
}
</script>

不过,我必须说,除了在页面上测试JavaScript函数外,我无法想象什么时候可以使用它。

如果不导航文档,则无法更改地址栏。这是事实。

当涉及使用伪协议处理程序在地址栏中执行JavaScript时 javascript 看到我的答案 空的JavaScript函数如何实际做某事?

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top