五维思考

学习要加,骄傲要减,机会要乘,懒惰要除。 http://www.5dthink.cn

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
/// <summary>
/// 动态计算表达式
/// </summary>
class JSCaller
{
    /// <summary>
    /// 动态计算表达式
    /// </summary>
    function Eval(expression: String)
    {
        return eval(expression, "unsafe");
    }
}

1、将上面代码保存为 d:\JSCaller.js
2、在运行中执行命令:jsc /t:library d:\JSCaller .js
3、生成JSCaller.dll文件,项目中引用:JSCaller.dll 
4、C#中使用

string expression = "(12345 + 321) * 50";
int result = Convert.ToInt32(new JSCaller().Eval(expression));
Console.WriteLine($"计算结果为:{result}");

 

jsc用法说明:https://docs.microsoft.com/zh-cn/previous-versions/cc435270(v=vs.71)

从命令行编译 JScript 代码

posted on 2019-09-08 16:07  五维思考  阅读(1031)  评论(0编辑  收藏  举报

QQ群:1. 全栈码农【346906288】2. VBA/VSTO【2660245】