内容简介:Scala.js 是一个将 Scala 语言编译成 JavaScript 的工具,旨在构建更健壮的前端 web 应用程序。0.6.29 版本包括: 用 SBT 1.x 对增量编译中的主要错误进行修复 主要的性能改进,特别是在模式匹配方面 它还引入了 ...
Scala.js 是一个将 Scala 语言编译成 JavaScript 的工具,旨在构建更健壮的前端 web 应用程序。0.6.29 版本包括:
- 用 SBT 1.x 对增量编译中的主要错误进行修复
- 主要的性能改进,特别是在模式匹配方面
它还引入了 js.import(ModuleName),相当于 JavaScript 的动态 import() 调用。具体如下:
js.import( ) 动态导入
CMAScript 2020 将标准化动态导入,Scala.js 使用 js.import[A<:js.Any]() 方法添加对它们的支持,它返回一个 js.promisation[A],其中参数 A 是描述模块 API 的 JS 特性。
import scala.scalajs.js
trait FooAPI extends js.Any {
def bar(x: Int): Int
}
val moduleName = "foo.js"
val promise = js.`import`[FooAPI](moduleName)
val future = promise.toFuture
for (module <- future) {
println(module.bar(5))
}
JDK 集合被重写,不再依赖 Scala 集合
在 0.6.28 之前,几个 JDK 集合(包括 java.util.HashMap、java.util.HashSet 和 java.util.TreeSet)都是在相应的 Scala 集合之上实现的(例如,Scala.Collection tion.immutable.HashMap),由于 JDK 集合和 Scala 集合之间的语义不匹配,导致效率问题。在 Scala.js 0.6.29 中,完全重新实现了所有这些集合,使 JDK 集合不再依赖 Scala 集合。
对 Unicode 数据库进行了升级,使其与最新的 JDK 8 相匹配
以下 Unicode 字符现在已被 java.lang.Character 方法识别并正确分类:00BB,20BC 到 20BF 和 32FF。
该版本还带来其他更改和修复,详情见发布说明。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- LLVM接受NVIDIA的“f18” Fortran编译器作为官方Fortran编译器
- 编译原理实战入门:用 JavaScript 写一个简单的四则运算编译器(四)结语
- Go 编译器介绍
- Go 编译器介绍
- C++编译器优化
- 编译原理实战入门:用 JavaScript 写一个简单的四则运算编译器(一)词法分析
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Hacker's Delight
Henry S. Warren Jr. / Addison-Wesley / 2002-7-27 / USD 59.99
A collection useful programming advice the author has collected over the years; small algorithms that make the programmer's task easier. * At long last, proven short-cuts to mastering difficult aspec......一起来看看 《Hacker's Delight》 这本书的介绍吧!