Javascript代理模式的问题
Problems with the Javascript proxy pattern
我想创建一个函数,它接受一个参数(一个函数)并代理该函数:
function proxyFunc(func) {
console.log("Proxying ", func.name);
var proxied = func;
func = function() {
console.log("Calling proxied ", func.name);
return proxied.apply(this, arguments);
};
}
不幸的是代理不起作用。我已经知道代理函数分配给原始函数是问题所在,但我不知道如何使其工作:
func = function() { ... }
你在找这个吗?
function proxyFunc(original) {
console.log("Proxying ", original.name);
return function() {
console.log("Calling proxied " + original.name);
return original.apply(this, arguments);
};
}
对于你正在做的事情,这将会有帮助:
function proxyMember(obj, member) {
var original = obj[member];
console.log("Proxying ", member);
obj[member] = function() {
console.log("Calling proxied " + member);
return original.apply(this, arguments);
};
}
proxyMember(obj, "foo");
相关文章:
- 正则表达式匹配模式或匹配其他所有内容 - 匹配优先级问题
- CKEditor内部的jQuery模式问题与按钮
- 挖空和显示模块模式的数据绑定问题
- j查询模式窗口,刷新父问题
- Type=文本模式问题
- Jquery Dialog模式问题
- 旋转jqueryUI模式的问题
- Javascript策略设计模式问题
- 多个引导模式的滚动问题
- SVG模式动画和背景淡入问题
- Javascript 模块模式问题
- 我应该如何在JS中使用揭示模块模式,传递引用,并避免加载顺序问题
- 为此模式编写正则表达式时遇到问题
- 自定义模式脚本 - Safari 和 IE 问题
- ESLint “max-len” 忽略模式的问题
- 模式对话框中 ui-grid 的大小调整问题不正确
- 可堆叠弹出窗口引导模式关闭问题
- JavaScript 模块模式上下文问题
- 更新现有数据时检索引导模式表单中的复选框字段的值时出现问题
- DOM加载后定义的触发器事件-JIRA打开新的问题模式