【问题标题】:Can I use a language other than JavaScript in client-side scripting?我可以在客户端脚本中使用 JavaScript 以外的语言吗?
【发布时间】:2012-12-26 19:20:30
【问题描述】:

我知道 IE 可以运行 VBScript 和 JScript,但我想要跨浏览器的东西,使用除 JavaScript 之外的另一种语言,所以我写了这个:

 <script src='bla.rb' type='text/ruby'></script>
 <script src='bla.coffee' type='text/coffescript'></script>
 <script src='bla.ics' type='text/icedcoffescript'></script>

它会正常运行。如何让这些标签起作用?

【问题讨论】:

  • 那你的问题是什么?
  • 如果有可以安装新语言的浏览器,我不会感到惊讶,但如果您正在寻找跨浏览器解决方案,那么不,您会被 Javascript 困住。
  • @MrLister 您可以通过 Javascript 安装语言解释器。 Javascript 完全能够解析 Ruby。
  • @MrLister 我以为 coffeescript 是在服务器端编译成 javascript 的?

标签: javascript html ruby coffeescript


【解决方案1】:

languages that can be compiled into JavaScript 有很多,包括 C、C++、Python、PHP 等。

在 JavaScript 中还有几种其他语言的虚拟机实现,包括用于 JVM 语言的 DoppioJVM 和用于 .NET 编程语言的 JSIL

【讨论】:

    【解决方案2】:

    Ruby:Maybe? 不知道这个项目有多远,但它确实存在。

    (Iced)CoffeeScript: Yes. 但是你必须加载一个额外的 JavaScript 文件作为 CoffeeScript 编译器。

    【讨论】:

    • 我感到好笑、惊讶和恐惧。适当修改。
    【解决方案3】:

    如果您使用 Emscripten 将 CPython 编译为 JavaScript,则可以使用 Python。也许你可以用 Ruby 做同样的事情。

    除了 Emscripten,还有一些语言可以编译成 JavaScript,例如 CoffeeScriptFay。当然,您也可以用 JavaScript 编写自己的 VM,并为您最喜欢的语言编写一个针对该 VM 的编译器。

    最终,浏览器本身只能解释 JavaScript。

    【讨论】:

      【解决方案4】:

      不,您不能依赖大多数浏览器中存在的任何其他语言。您可以要求用户安装新的语言或插件,但 JavaScript 是唯一的“通用”客户端脚本语言。

      【讨论】:

        猜你喜欢
        • 2014-02-28
        • 1970-01-01
        • 2012-03-16
        • 1970-01-01
        • 2018-10-01
        • 2014-11-15
        • 2019-10-26
        • 2011-10-11
        • 2011-08-31
        相关资源
        最近更新 更多