Scaja.js 浏览器支持
Scaja.js browser support
Scala.js
将 Scala
代码编译为 Javascript
。我很清楚。
但我找不到任何信息,Javascript
是什么。是 ES 5.5
,还是 ES 2015
或更高版本?它是填充现代方法,还是将其转换为旧方法,如 babel
那样?
有没有三处scala.js browser compatibility table
?
对不起我的英语不好。这不是我的母语。
Scala.js 默认编译为 ECMAScript 5.1 严格模式(但本身不需要严格模式支持)。您可以参考 Kangax ES 5 compatibility table 以准确了解 Scala.js 将 运行 的位置。实际上,这基本上是所有浏览器都支持的,包括很老的浏览器。
您还可以配置 Scala.js 以发出需要 ECMAScript 2015 的代码,使用以下 sbt 设置:
import org.scalajs.core.tools.linker.standard._
scalaJSLinkerConfig ~= { _.withOutputMode(OutputMode.ECMAScript2015) }
无论如何,Scala.js 不会以对同一网页上的外部 JavaScript 代码可见的方式填充任何内容。当某些 ES 功能不存在时,它确实在内部使用了一些回退实现,例如,Math.imul
当针对 ES 5.1 时。
Scala.js
将 Scala
代码编译为 Javascript
。我很清楚。
但我找不到任何信息,Javascript
是什么。是 ES 5.5
,还是 ES 2015
或更高版本?它是填充现代方法,还是将其转换为旧方法,如 babel
那样?
有没有三处scala.js browser compatibility table
?
对不起我的英语不好。这不是我的母语。
Scala.js 默认编译为 ECMAScript 5.1 严格模式(但本身不需要严格模式支持)。您可以参考 Kangax ES 5 compatibility table 以准确了解 Scala.js 将 运行 的位置。实际上,这基本上是所有浏览器都支持的,包括很老的浏览器。
您还可以配置 Scala.js 以发出需要 ECMAScript 2015 的代码,使用以下 sbt 设置:
import org.scalajs.core.tools.linker.standard._
scalaJSLinkerConfig ~= { _.withOutputMode(OutputMode.ECMAScript2015) }
无论如何,Scala.js 不会以对同一网页上的外部 JavaScript 代码可见的方式填充任何内容。当某些 ES 功能不存在时,它确实在内部使用了一些回退实现,例如,Math.imul
当针对 ES 5.1 时。