国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > JavaScript > 正文

JS實(shí)現(xiàn)self的resend

2019-11-21 00:20:29
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
ECMA V5定義了一個(gè)期待已久的方法:Object.getPrototypeOf,它可以無(wú)視型別信息得到某對(duì)象的原型([[prototype]]),基于此,我們可以構(gòu)造出一個(gè)resend:(請(qǐng)用Chrome 5、IE9預(yù)覽第三版測(cè)試)
復(fù)制代碼 代碼如下:

obj.resend = function() {
var pof = Object.getPrototypeOf;
var has = function() {......} // hasOwnProperty的封裝
var make = function(obj, old) {
return function(name, args) {
var step = pof(obj),
r;
while (step && !has(step, name)) step = pof(step);
if (!step) throw new Error('Unable to resend: method missing');

var foundMethod = step[name];
var backup = arguments.callee;
this.resend = make(this, backup);
r = foundMethod.apply(this, Array.prototype.slice.call(arguments, 1));
this.resend = old;
return r
}
};

return function(name, args__) {
var rv;
var old = this.resend;
this.resend = make(this, old);
rv = this.resend.apply(this, arguments);
this.resend = original;
return rv;
}
}()
發(fā)表評(píng)論 共有條評(píng)論
用戶(hù)名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 加查县| 和静县| 祁阳县| 滕州市| 电白县| 普陀区| 革吉县| 南宫市| 建平县| 平邑县| 陕西省| 布尔津县| 灵石县| 黔东| 易门县| 宣汉县| 邵武市| 寿阳县| 宁陵县| 宜兰市| 通许县| 威海市| 柯坪县| 松阳县| 民权县| 长沙县| 合山市| 毕节市| 黑水县| 商丘市| 上饶县| 天台县| 娄烦县| 志丹县| 竹溪县| 稻城县| 中西区| 高台县| 阿勒泰市| 探索| 务川|