Node.js 中的反思
Reflection in Node.js
任何人都知道如何在 Node 中使用反射。js/Discord 我想替换
我的直接图属性调用:
Userlist.get(uid).强度
有一个更程序化的,比如
var DamangeStateName = "Strength"
Userlist.get(uid).DamangeStateName
这会像直接的那样获得强度 属性。
我需要反射的主要原因是因为有时 Key 属性是 "Agilty" 而不是 "Strength"
虽然我的代码在其他任何地方都使用字符串变量,但我的播放器数据地图不能使用相同的技巧,我需要能够使用反射 os 它与其余部分的协同作用我的代码
我相信你不需要反思你所说的问题。您希望能够处理两个意思相同的键。
用包装逻辑的方法扩展目标项 (object/class)。
Userlist.get(uid).DamangeStateName
User.prototype.NormalizedDamangeStateName = function() { /* ... */ }
我的User
是一个假设。您需要通过确定 Userlist.get(...)
returns... 来识别正确的对象...无论如何,这个概念应该是合理的。
JavaScript,是一种基于原型的语言,其中所有内容基本上只是字符串到值的哈希表,既没有也不需要 Java 或 C# 具有的反射机制。
我想你想要这样的东西:
Userlist.get(uid)[DamangeStateName]
任何人都知道如何在 Node 中使用反射。js/Discord 我想替换
我的直接图属性调用: Userlist.get(uid).强度
有一个更程序化的,比如 var DamangeStateName = "Strength" Userlist.get(uid).DamangeStateName
这会像直接的那样获得强度 属性。 我需要反射的主要原因是因为有时 Key 属性是 "Agilty" 而不是 "Strength" 虽然我的代码在其他任何地方都使用字符串变量,但我的播放器数据地图不能使用相同的技巧,我需要能够使用反射 os 它与其余部分的协同作用我的代码
我相信你不需要反思你所说的问题。您希望能够处理两个意思相同的键。
用包装逻辑的方法扩展目标项 (object/class)。
Userlist.get(uid).DamangeStateName
User.prototype.NormalizedDamangeStateName = function() { /* ... */ }
我的User
是一个假设。您需要通过确定 Userlist.get(...)
returns... 来识别正确的对象...无论如何,这个概念应该是合理的。
JavaScript,是一种基于原型的语言,其中所有内容基本上只是字符串到值的哈希表,既没有也不需要 Java 或 C# 具有的反射机制。
我想你想要这样的东西:
Userlist.get(uid)[DamangeStateName]