diff --git a/libraries/stdlib/js-ir/runtime/typeCheckUtils.kt b/libraries/stdlib/js-ir/runtime/typeCheckUtils.kt index e4b9b0ed093..614e2fdb5c8 100644 --- a/libraries/stdlib/js-ir/runtime/typeCheckUtils.kt +++ b/libraries/stdlib/js-ir/runtime/typeCheckUtils.kt @@ -83,19 +83,14 @@ internal fun isSuspendFunction(obj: dynamic, arity: Int): Boolean { if (jsTypeOf(obj) == "object" && jsIn("${'$'}metadata${'$'}", obj.constructor)) { @Suppress("IMPLICIT_BOXING_IN_IDENTITY_EQUALS") return obj.constructor.unsafeCast().`$metadata$`?.suspendArity?.let { - val result = js("{result: false}") - js( - """ - for (var i = 0; i < it.length; i++) { - if (arity === it[i]) { - result.result = true; - break; - } - result.result = false; + var result = false + for (item in it) { + if (arity == item) { + result = true + break } - """ - ) - return result.result + } + return result } ?: false }