Spec-Zone.ru › Kotlin 2

js

kotlin-stdlib/kotlin.js/js

Требования к платформе и версии: JS (1.1)

actual external fun js(code: String): dynamic

Вставляет заданный фрагмент кода JavaScript непосредственно в вызывающую функцию. Компилятор заменяет вызов js(...) строковой константой, переданной в качестве параметра.

Пример:

fun logToConsole(message: String): Unit {
js("console.log(message)")
}

Параметры

code

фрагмент кода JavaScript, который нужно вставить в сгенерированный код. Должен быть константой времени компиляции, иначе компилятор выдаст сообщение об ошибке. Можно безопасно обращаться к локальным переменным вызывающей функции (но не к локальным переменным внешних функций), включая параметры. Нельзя обращаться к функциям, свойствам и классам по их коротким именам.


val <T : Any> KClass<T>.js: JsClass<T>

Получает ссылку на конструктор для заданного KClass.

Требования к платформе и версии: Wasm-JS (1.9)

@ExperimentalWasmJsInterop
actual external fun js(code: String): dynamic

Эта функция позволяет включать JavaScript код в кодовую базу Kotlin/Wasm. Она используется для реализации функций верхнего уровня и инициализации свойств верхнего уровня.

Важно отметить, что вызовы функции js должны быть единственным выражением в теле функции или инициализаторе свойства.

Параметр code должен быть константой времени компиляции.

При использовании в контексте выражения code должен содержать одно выражение JavaScript. Например:

val version: String = js("process.version")
fun newEmptyJsArray(): JsValue = js("[]")

При использовании в теле функции code должен содержать список инструкций JavaScript. Например:

fun log(message1: String, message2: String) {
js("""
console.log(message1);
console.log(message2);
""")
}

В коде JavaScript code можно использовать параметры вызывающей функции. Однако другие объявления Kotlin внутри блока code недоступны.

© 2010–2026 JetBrains s.r.o. and Kotlin Programming Language contributors
Licensed under the Apache License, Version 2.0.
https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.js/js.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API