我希望能够做到这一点
var o = {
};
o.functionNotFound(function(name, args) {
console.log(name + ' does not exist');
});
o.idontexist(); // idontexist does not exist
我认为这个功能确实存在,但我找不到它。
答案 0 :(得分:2)
在当前状态下,JavaScript不支持您需要的确切功能。评论中的帖子提供了有关可以做什么和不可以做什么的详细信息。但是,如果您愿意放弃使用“。”方法调用,这里是一个接近您想要的代码示例:
var o =
{
show: function(m)
{
alert(m);
},
invoke: function(methname, args)
{
try
{
this[methname](args);
}
catch(e)
{
alert("Method '" + methname + "' does not exist");
}
}
}
o.invoke("show", "hello");
o.invoke("sho", "hello");
输出:
您好
方法'笑'不存在