我想知道是否有办法在Node中模仿PHP的魔术方法__get()和__set()。从这个问题:JavaScript getter for all properties我知道你可以在Rhino中做到这一点,但Node是在V8上构建的。 V8有办法做到这一点吗?
答案 0 :(得分:3)
我相信你运气不好,至少as of March 2010。至少你有__defineGetter__
和__defineSetter__
,但我意识到这不是一回事。一般来说,我认为使用__noSuchMethod__
/ __get
/ method_missing
并不好,因为它会使代码更难阅读。考虑在没有它的情况下尝试过来,看看它是否能让你的代码更清晰。
答案 1 :(得分:2)
没有答案?看看nowjs。他们似乎已找到一种方法使__get()和__set()在JavaScript中工作。我无法弄清楚他们是如何从源代码中做到的。 :(
编辑:查看Monitor All JavaScript Object Properties (magic getters and setters)
答案 2 :(得分:1)
请查看my following answer,了解如何使用ES6 proxies解决此问题。