【问题标题】:Convert JavaScript to Java [closed]将 JavaScript 转换为 Java [关闭]
【发布时间】:2012-05-09 08:49:26
【问题描述】:

有没有将 JavaScript 转换为 Java 的好方法?

我有一个需要转换为 Java 的 JavaScript 文件。这是一个用 JavaScript 编写的日历组件。

【问题讨论】:

  • 你能做的就是把它放在一个 HTML webView 并重载 shouldOverrideUrlLoading 函数并控制点击日历时发生的事情。查看this question了解更多详情。
  • 你可以有更多的成功transpilingJava to javascript。浏览器上的愤怒的小鸟就是这样完成的
  • 你不能。尚未为此构建任何转换器工具。 :)
  • 此外,Java 越来越成为 javascript 的子集,而不是相反。尤其是在 Java 上缺少 lambda/closure。因此,就可行性而言,您将很难将 javascript 转换为 Java(因为 javascript 本质上具有 lambda 和动态),但您可以将 Java 转换为 javascript :-)
  • 很棒的问题。像往常一样,我不知道为什么这个问题被关闭了。我正在寻找一个完全一样的答案,但是...... NOoooo SO 说我们不能讨论这种将 JS 转换为 Java 或反之亦然的异端概念。

标签: java javascript


【解决方案1】:

不,你不能。

不幸的是名称相似,但 JavaScript 和 Java 是完全不同的语言。

来自Wikipedia

JavaScript 使用受 C 影响的语法。JavaScript 复制了许多 Java 中的名称和命名约定,但这两种语言是 否则不相关并且具有非常不同的语义。关键设计 JavaScript 中的原则取自 Self 和 Scheme 编程语言。

更准确地说:当然可以。但这涉及在您的 java 程序中编写或合并 JS 引擎、二进制代码或某种解释器。一个完整的转译器可能是可能的,但并不容易,尤其是在这个方向上,当然还没有做出来。

【讨论】:

  • 当然可以,如果 javascript 代码是用 OO 方式编写的,那么转换器没有理由不能将其转换为 java。 JS 处理继承的方式有点不同,并且没有任何类会使其成为挑战。你可能仍然会遇到一堆编译问题。但我想说这并非不可能。
  • 祝你好运。在 JS 中函数作为对象和类作为哈希映射的语义不能用 Java 表示,至少不能以任何可用的形式表示。
  • 两者都是图灵完整的语言,为什么不呢?
  • 最近,我 wrote a translator 将一小部分 JavaScript 编程语言转换为 Java。
猜你喜欢
  • 2017-01-13
  • 2012-11-21
  • 1970-01-01
  • 2011-04-01
  • 2011-05-11
  • 2016-01-14
  • 2015-02-08
  • 2017-09-10
  • 2013-06-28
相关资源
最近更新 更多