盘点2个.Net版本的JavaScript执行引擎

玩点科技新鲜事 2024-04-15 08:52:33
我是编程乐趣,一个10年.Net开发经验老程序员,点击右上方“关注”,每天为你分享开源项目和编程知识。 推荐2个JavaScript开源引擎,方便在C#执行JavaScript脚本。 1、jurassic Jurassic是一个开源的托管JavaScript执行引擎,使用MS-PL授权协议。它的目标是成为.NET平台上功能最强,最为标准的JavaScript引擎。 功能强大:支持ECMAScript 3和ECMAScript 5的功能,具备简单但强大的API,将JavaScript编译为.NET字节码(CIL),而非解释执行。这些功能使得Jurassic能够满足各种不同的编程需求; var engine = new Jurassic.ScriptEngine();//输出11Console.WriteLine(engine.Evaluate("var a = 5; var b = 6; a + b;"));engine.Evaluate("function add(a,b){return a+b;}");var result = engine.CallGlobalFunction("add", 5, 6); //输入11Console.WriteLine(result);开源地址:https://github.com/paulbartrum/jurassic 详细介绍:一个纯.Net开发的JavaScript执行引擎 2、Yantra 该项目支持多种JavaScript特性,包括ES5和ES6的许多功能,如箭头函数、类、类成员、增强的对象字面量、模板字符串、解构赋值、let和const声明、Map和Set等内置对象,以及二进制和八进制字面量。它还支持Async/Await异步编程模型、可选参数、尾调用优化等特性。 using YantraJS.Core;var context = new JSContext();//创建一个方法context["add"] = new JSFunction((in Arguments a) => { return new JSNumber( (a[0]?.IntValue ?? 0) + (a[1]?.IntValue ?? 0) );});var result = context.Eval("add(4,5)", "script.js");Console.Write(result);开源地址:https://github.com/yantrajs/yantra 详细介绍:Yantra:一个基于.Net跨平台JavaScript开源引擎 - End -
0 阅读:48

玩点科技新鲜事

简介:感谢大家的关注