`
ariyue
  • 浏览: 337589 次
  • 性别: Icon_minigender_1
  • 来自: 厦门
社区版块
存档分类
最新评论

js call apply

阅读更多
Function.prototype.apply = function (obj, argu) {
if (obj) obj.constructor.prototype._caller = this; 
var argus = new Array();
for (var i=0;i<argu.length;i++)
  argus[i] = "argu[" + i + "]";
var r;
eval("r = " + (obj ? ("obj._caller(" + argus.join(",") + ");") : ("this(" + argus.join(",") + ");")));
return r;
};
Function.prototype.call = function (obj) {
var argu = new Array();
for (var i=1;i<arguments.length;i++)
  argu[i-1] = arguments[i];
return this.apply(obj, argu);
}
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics