将JavaScript引擎嵌入到.NET中 - c#

Improve this question

只是想知道是否有人尝试将任何js引擎嵌入并实际集成到.net环境中。我可以找到并实际使用Spidermonkey-dotnet项目(经过一番痛苦和努力的很多之后,因为它已经过时并且还没有完全完成)。在这方面有经验的人吗?像SquirrelFish,V8 ..这样的引擎

并不是我对Mozilla的Spidermonkey(对用于ASP.NET核心应用程序中的自定义组件的类似Rails的微型框架)不满意,但是我仍然希望对这些选项进行进一步的探索。命令行解决方案不是我所需要的,除了CLR之外,我不能依赖任何其他东西,我需要从JavaScript / C#对象调用方法。

// c# class
public class A
{
    public string Hello(string msg)
    {
        return msg + " whatewer";
    }
}

// js snippet
var a = new A();
console.log(a.Hello('Call me')); // i have a console.log implemented, don't worry, it's not a client-side code :)

只是为了澄清-我并不是要在服务器端javascript中实际对应用程序本身进行编程。它仅用于编写自定义用户子应用程序(可以视为某种DSL)。允许普通人使用js进行编程比使用C#更容易(更安全)。

参考方案

尝试Javascript .NET。它托管在GitHub上,最初托管在CodePlex上(here)

项目讨论:http://javascriptdotnet.codeplex.com/discussions

它实现了Google V8。您可以直接从.NET代码编译和运行JavaScript,并提供CLI对象以供JavaScript代码使用。它从JavaScript生成本机代码。

如果我得到url(''),我该如何使用另一个URL - javascript

我是新手,正在写这篇文章,但是如果源上没有图像,那么我只有空白。有人可以告诉我,如果我正在获取背景图像,如何获取/images/no-image.jpg:url();这是我的代码:<div class="uk-clearfix uk-position-relative"> <div class="recipeb…

对ID为'abc%'的dom执行操作 - javascript

我想对ID为'abc%'的DOM进行一些操作<a id='abc1'></a> <a id='abc2'></a> <a id='abc3'></a> <a id='abc4'></a>…

Jsonp没有出现``访问控制允许来源''错误 - javascript

在我的PHP中,我喜欢这样来回显jsonp类型的“ json数据”echo $_GET['callback'] . '('.json_encode($arr).')'; 在我的js(angularjs)中,$http.get('http://example.com/app/?callbac…

Python-spidermonkey:如何获取行号。错误 - javascript

如何检索发生错误的行号?在下一个脚本中,该行输出(作为最后一次加注的结果),但是没有行号。在JS错误对象中。from spidermonkey import Runtime, JSError runtime = Runtime() context = runtime.new_context() try: context.execute( "func…

javascript popupwindow之后的行如何工作? - javascript

好的,我有一个来自后面代码的方法,可以创建一个popupwindow。然后有一行代码要在那之后执行,我想知道那行代码何时执行,是在使用popupwindow之后执行还是在创建popupwindow之后执行?例如:void exPopupWindowMethod() { string scr = "window.open('exampleP…