当前位置:  开发笔记 > 编程语言 > 正文

Javascript原型是否具有与Lua的__index和__newindex等效的东西?

如何解决《Javascript原型是否具有与Lua的__index和__newindex等效的东西?》经验,为你挑选了1个好方法。

我想在引用的属性/方法不存在时启动的Javascript对象上定义一种行为。在Lua中,您可以使用元表和__index & __newindex方法来执行此操作。

--Lua code
o = setmetatable({},{__index=function(self,key)
  print("tried to undefined key",key)
  return nil
end
})

所以我想知道javascript中是否有类似的东西。

我要实现的是一个通用的RPC接口,其工作方式如下(无效的Javascript):

function RPC(url)
{
    this.url = url;
}

RPC.prototype.__index=function(methodname) //imagine that prototype.__index exists
{ 
    AJAX.get(this.url+"?call="+ methodname);
}

var proxy = RPC("http://example.com/rpcinterface");
proxy.ServerMethodA(1,2,3);
proxy.ServerMethodB("abc");

那我该怎么做呢?

可以做到吗?



1> Miles..:

仅供参考:Firefox支持非标准__noSuchMethod__扩展。

推荐阅读
惬听风吟jyy_802
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有