使函数返回一些值而不是上下文

时间:2015-08-12 10:45:07

标签: javascript

假设我有一个像<; p>这样的函数

function a(){ return this;} a();

这将返回enter image description here

之类的内容

我想让这个函数返回一些值,说&#39; 10&#39;例如。但我不想改变功能中的任何内容。有可能吗?

为了返回一个值,我们可以像

那样做
function a(x){ return x;} a(10);

但我不想改变我的功能。

2 个答案:

答案 0 :(得分:4)

这是一个奇怪的问题,但你可以调用一个函数,无论你希望它在哪个范围内执行。如果你想让范围成为一个数字,那就这样吧。

这应该做你想要的:

function a() { return this; }
a.call(10)

答案 1 :(得分:1)

@Jivings的答案很棒。我只是将其添加到解决方案范围内。

function a() { return this; }

var num = Number;
num.prototype.a = a;

var ten = num(10);
ten.a();