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。

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


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

查看所有标签

猜你喜欢:

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

Learning Web Design

Learning Web Design

Jennifer Niederst Robbins / O'Reilly Media / 2007-6-15 / USD 44.99

Since the last edition of this book appeared three years ago, there has been a major climate change with regard to web standards. Designers are no longer using (X)HTML as a design tool, but as a means......一起来看看 《Learning Web Design》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

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

各进制数互转换器

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具