我可以用javascript听函数调用吗
can i listen to a function call using javascript?
如何使用javascript:监听带有参数的特定函数调用
示例:当调用showname(2)时,我也可以调用另一个函数showage(2)
您可以包装它:
var native = window.alert;
window.alert = function(){
console.log('alerting...');
native.apply(window, arguments);
console.log('alerted!');
};
alert('test');
更新
您可以使用getter和/或setter对属性执行类似的操作:
var foo = {
bar = 'baz'
};
进入
var foo = {
_bar: 'baz',
get bar(){
console.log('someone is taking my bar!');
return this._bar;
},
set bar(val){
console.log('someone pretends to set my bar to "' + val + '"!');
this._bar = val;
}
};
alert(foo.bar);
foo.bar = 'taz';
封装的(专用_bar
):
var foo = function(){
var _bar = 'baz';
return {
get bar(){
console.log('someone is taking my bar!');
return _bar;
},
set bar(val){
console.log('someone pretends to set my bar to "' + val + '"!');
_bar = val;
}
};
}();
您不能"挂钩"到任意函数调用中
一种方法是向函数添加回调,例如define:
function showname(firstname, lastname, callback){
alert(firstname + lastname);
if(callback) callback();
}
function showage(){
alert("who's age?");
}
然后呼叫:
showname("John", "Doe", showage);
相关文章:
- 使用评估函数调用 javascript 函数作为文本框 Asp.net 参数
- 从动态加载的内部函数调用Javascript函数
- python函数调用javascript自动完成
- 当其他函数调用Javascript时运行我的代码
- 函数调用 JavaScript
- 处理快速连续的函数调用 - Javascript / underscore.js / node.js
- 如何从Jquery函数调用javascript
- web服务器php上的定时函数调用?javascript
- 冒号运算符“:"函数调用(javascript)之前
- 未定义从php代码函数调用javascript函数
- 我如何找出多少次函数调用javascript/jquery
- 如何传递一个scriptlet变量到onclick()函数调用javascript
- 当原型函数调用javascript中的常规函数时会发生什么?
- 从asp.net中的代码后面函数调用Javascript
- 从外部函数调用Javascript即时函数
- InternetExplorer8被函数调用(JavaScript)阻塞
- 直接函数与另一个函数调用Javascript
- 在函数调用javascript之间保留变量值
- 从PHP函数调用Javascript函数
- “this"在函数调用javascript