JavaScript函数学习笔记-apply装饰器原理及作用

#apply('第一个参数:需要制定的对象:如果非对象方法为null,否则的是目标指定对象','第二个参数:arguments:参数数组')函数装饰器,有三个作用
##1、动态制定对象的方法或者函数的this指针所指向的对象,或者作用域
##2、在不改任意函数功能的情况下,增加新功能
##3、将任意函数所需要的参数,打包成数组传入
 
 
 
eg:给parseInt解析函数,增加一个自身被调用次数计数功能
'use strict'
var count = 0;
var oldParseInt = parseInt;//保留原函数的功能
window.parseInt = function () {
count += 1; //保留函数功能的情况下,增加一个函数被调用的功能
return oldParseInt.apply(null,arguments);
}

parseInt('1');
parseInt('2');
parseInt('3');
console.log('count= ' + count);
console.log(parseInt('0x10'));
posted @ 2022-03-31 17:00  Chiffon1996  阅读(30)  评论(0)    收藏  举报