例如这段代码:
function stuff() {
this.onlyMethod = function () {
return something;
}
}
// some error is thrown
stuff().nonExistant();
Run Code Online (Sandbox Code Playgroud)
有没有办法做PHP之类的东西__call作为对象内部的后备?
function stuff() {
this.onlyMethod = function () {
return something;
}
// "catcher" function
this.__call__ = function (name, params) {
alert(name + " can't be called.");
}
}
// would then raise the alert "nonExistant can't be called".
stuff().nonExistant();
Run Code Online (Sandbox Code Playgroud)
也许我会再解释一下我在做什么.
该对象包含另一个对象,该对象具有应该可以通过此对象直接访问的方法.但是这些方法对于每个对象都是不同的,所以我不能只是路由它们,我需要能够动态地调用它们.
我知道我可以让它里面的对象成为主对象的属性stuff.obj.existant(),但我只是想知道我是否可以避免它,因为主要对象是一种包装器,只是暂时添加一些功能(并使它更容易同时访问对象).
javascript ×1