CodeBlanks Logo Icon CodeBlanks

JS target

KMP ile JavaScript hedefini öğrenirsin.

JS target

KMP'de JavaScript hedefi, Kotlin kodunu tarayıcıda veya Node.js'te çalışan bir JavaScript modülüne derler.

Hedef Gradle'da js() bloğu ile eklenir. İçine nodejs() (Node) veya browser() (tarayıcı) ortamı seçilir. Çıktı bir .js dosyasıdır; npm paketi olarak da yayınlanabilir. Kotlin stdlib otomatik olarak bu dosyaya gömülür. Bu dersteki jsTarget fonksiyonu konsepti modeller.

JS modülü kullanımı

JS hedefinin ürettiği modül, bir HTML sayfasına <script> ile eklenebilir veya Node.js'te require ile çağrılabilir.

Gradle'da js { browser { webpackTask { } } } bloğu paketlemeyi yönetir. Kotlin fonksiyonları @JsExport ile işaretlenince JavaScript tarafından görünebilir hale gelir. Bu sayede paylaşılan mantık hem tarayıcıda hem Node'da çalışır. Tür dönüşümü otomatiktir: Kotlin String JS string'e eşlenir.

Uygulama jsTarget yaz

fun jsTarget(): String tanımla. "JS" döndürsün. main içinde println(jsTarget()) yaz.

Başlangıç kodu

Main.kt
// jsTarget fonksiyonunu ekle

fun main() {
    // JS hedefini yazdır
}

Örnek çözüm

Main.kt
fun jsTarget(): String = "JS"
fun main() {
    println(jsTarget())
}

Beklenen çıktı

JS

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 js bloğunu tamamla

Soru
____ {
    nodejs()
}
Cevap
js {
    nodejs()
}

Açıklama: js() bloğu JavaScript hedefini ekler.

2 js() bloğu hangi çıktıyı üretir?

Main.kt
The JS output has a .js extension.
  • .jar
  • .framework
  • .js dosyası Doğru cevap
  • .dylib

Açıklama: js() bloğu bir JavaScript dosyası üretir.

3 JS parçalarını eşle

Kavram Anlamı
js() Tarayıcı/Node hedefi
nodejs() Node ortamı
browser() Tarayıcı ortamı
.js Çıktı dosyası

Uzman bölümündeki tüm dersler