Scala Language
Scala.js
Ricerca…
introduzione
Scala.js
è una porta di Scala
che compila in JavaScript
, che alla fine funzionerà all'esterno della JVM
. Ha vantaggi come forte tipizzazione, ottimizzazione del codice in fase di compilazione, piena interoperabilità con le librerie JavaScript.
console.log in Scala.js
println("Hello Scala.js") // In ES6: console.log("Hello Scala.js");
Funzioni di freccia grassa
val lastNames = people.map(p => p.lastName)
// Or shorter:
val lastNames = people.map(_.lastName)
Classe semplice
class Person(val firstName: String, val lastName: String) {
def fullName(): String =
s"$firstName $lastName"
}
collezioni
val personMap = Map(
10 -> new Person("Roger", "Moore"),
20 -> new Person("James", "Bond")
)
val names = for {
(key, person) <- personMap
if key > 15
} yield s"$key = ${person.firstName}"
Manipolazione del DOM
import org.scalajs.dom
import dom.document
def appendP(target: dom.Node, text: String) = {
val pNode = document.createElement("p")
val textNode = document.createTextNode(text)
pNode.appendChild(textNode)
target.appendChild(pNode)
}
Utilizzo con SBT
Dipendenza da Sbt
libraryDependencies += "org.scala-js" %%% "scalajs-dom" % "0.9.1" // (Triple %%%)
In esecuzione
sbt run
In esecuzione con la compilazione continua:
sbt ~run
Compilare a un singolo file JavaScript:
sbt fastOptJS
Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow