需要像Javascript上的c#表达式树

本文关键字:表达式 上的 Javascript | 更新日期: 2023-09-27 18:16:58

考虑如下:

const myFunc = (x) => x.Property1;
let obj = {
 Property1: "value1",
 Property2: "value2"
};
console.log(myFunc(obj)); // output: value1

我需要这样的东西:

console.log(whatINeed(myFunc, obj)) // output: **Property1**

有可能达到这个要求吗?!

"whatINeed"函数的主体是什么?

需要像Javascript上的c#表达式树

如果运行myFunc.toString(),它将返回"(x) => x.Property1"。然后您可以为此编写一个解析器,应该不会太难。如果你想要像c#那样的全功能,那就很难了。