如何使用 .NET Core 在服务器端评估 JavaScript 表达式?

问题描述

我正在构建一个我想使用 JavaScript 编写脚本的表达式引擎。在 .NET Framework 中,可以使用 JScript 库来计算 JavaScript 表达式。但是,在 .NET Core 中,目前不支持 JScript。此外,现有的库(nodeservices/SpaServices)已被弃用。 实现以下目标的最佳解决方案是什么:

    var result = SomeJavaScriptEvaluator.Eval("1 + 1"); //2
    var isConditionTrue = SomeJavaScriptEvaluator.Eval("someValue !== null"); //true or false

解决方法

所以 ClearScript 提供了答案。它是 V8 JavaScript 引擎的实现,并提供调用 JavaScript 表达式的方法。