zoukankan      html  css  js  c++  java
  • C# 执行Javascript脚本

    该测试在.netcore环境中执行。

    1.引用微软提供的包"Microsoft.ClearScript"。

    2.编写好Javascript脚本。

    function testFunc(t) {
        return t + ",这是一个演示脚本";
    }

    3.在项目中添加C#代码。

    using (var engine = new V8ScriptEngine())
    {
    
        string testScript = System.IO.File.ReadAllText("demo.js", System.Text.Encoding.UTF8);
    
        engine.Execute(testScript);
        //直接C#函数调用
        var rValue = engine.Script.testFunc("你好");
        Console.WriteLine(rValue); //你好,这是一个演示脚本
    
        //或者使用脚本调用
        var rValue2 = engine.Invoke("testFunc", "你好");
        Console.WriteLine(rValue2); //你好,这是一个演示脚本
    }

    4.其他使用方法和相关文档,可以访问项目的相关链接

    源码地址:https://github.com/microsoft/ClearScript

    例  子:https://microsoft.github.io/ClearScript/Examples/Examples.html

    5.使用ClearScript需要注意的。

    • 如果JavaScript代码中有window等浏览器对象,执行engine.Execute(testScript);会报错。
    • 如果脚本中有未定义的对象,同样执行engine.Execute(testScript);也会报错。
    • 如果想执行多个文件,只需要将多个文件拼接成一个字符串即可。
    • 考虑到某一个JavaScript脚本文件是不能修改情况下,脚本文件可以看成包含输入输出的模块。模块中用到的成员变量可以自己定义一个JavaScript脚本文件进行适配。
  • 相关阅读:
    基于MATLAB求解矩阵的正交补矩阵
    MySQL的安装与配置
    删除ubuntu后修复win7系统的引导
    VS2010中快捷添加命名空间
    java学习之函数
    java学习之break 和 continue
    For循环复杂练习
    For循环练习之99乘法表和转义字符
    java学习之语句结构
    java学习之运算符
  • 原文地址:https://www.cnblogs.com/LittleJin/p/14428459.html
Copyright © 2011-2022 走看看