Scala.js 0.6.29 发布,将 Scala 编译成 js 的编译器

栏目: 软件资讯 · 发布时间: 5年前

内容简介: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))
}

Scala.js 0.6.29 发布,将 Scala 编译成 js 的编译器Scala.js 0.6.29 发布,将 Scala 编译成 js 的编译器

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。

该版本还带来其他更改和修复,详情见发布说明


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Wireshark网络分析就这么简单

Wireshark网络分析就这么简单

林沛满 / 人民邮电出版社 / 2014-11-6 / 39.00

Wireshark可能是世界上最好的开源网络包分析器,能在多种平台上(比如Windows、Linux和Mac)抓取和分析网络包,在IT业界有着广泛的应用。 《Wireshark网络分析就这么简单》采用诙谐风趣的手法,由浅入深地用Wireshark分析了常见的网络协议,读者在学习Wireshark的同时,也会在不知不觉中理解这些协议。作者还通过身边发生的一些真实案例,分享了Wireshark的......一起来看看 《Wireshark网络分析就这么简单》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

在线进制转换器
在线进制转换器

各进制数互转换器

随机密码生成器
随机密码生成器

多种字符组合密码