我是 JavaScript 的新手,正在使用 JavaScript 编写一个简单的网页游戏以进行研究。人们可以玩游戏并收集一些数据。采集到的数据需要通过MATLAB进行处理,并将结果返回给JavaScript代码。 JavaScript 代码将在客户端运行,而 MATLAB 将在服务器端运行。
JavaScript 程序如何调用 MATLAB 中的函数并接收来自 MATLAB 的数据?我在网上搜索,发现 MATLAB 可以用作自动化服务器,然后由 Web 应用程序调用 (http://www.mathworks.com/help/matlab/matlab_external/call-matlab-functions-from-a-web-application.html)。
该链接给出了一个使用 VBScript 调用 MATLAB 文件的示例。但是,我找不到任何使用 JavaScript 调用的资源。我应该用 JavaScript 做什么?此外,JavaScript 是否可以与 MATLAB 交互?
最佳答案
你的问题有点含糊。它是一个 Web 应用程序,因此涉及两方,即服务器端和客户端。 MATLAB 需要在服务端调用还是客户端调用?
假设是服务端,有多种选择
1) 您提到的 COM 自动化服务器仅在服务器运行 Windows 时才有效,因为 COM 仅适用于 Windows。
2) 以某种方式将服务器端代码与 C/C++ 接口(interface),例如,使用 CGI,并使用 C/C++ 代码调用 MATLAB Engine .
3) 使用 MATLAB Builder JA 将 MATLAB 代码转换为 JAR 文件,该文件可以从基于 Java 的 Web 应用程序中调用。同样,您可以使用 MATLAB Builder EX 将 MATLAB 代码转换为 .NET 程序集 DLL,它可以从基于 C# (ASP.NET) 的 Web 应用程序中调用。
4) 设置 MATLAB Production Server (MPS) 并使用 MATLAB Compiler 部署代码。可以使用在服务器端 Web 应用程序中运行的 Java、Python 或 .NET 客户端代码调用已部署的 MATLAB 代码。
如果是客户端 JavaScript 与 MATLAB 对话,恐怕没有简单的方法让两者直接对话。 MPS 仍然是可能的,但它将通过服务器端 Web 应用程序实现。也许您可以探索使用 MATLAB Coder 将 MATLAB 代码转换为 C 代码,然后使用类似转译器的工具将 C 代码转换为可以直接在浏览器中运行的 JavaScript 代码的可能性。
关于javascript - 在 JavaScript 中调用 MATLAB,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24583162/