diff --git a/js/js.libraries/src/core/json.kt b/js/js.libraries/src/core/json.kt index 2d424b58a2d..0cec46403cc 100644 --- a/js/js.libraries/src/core/json.kt +++ b/js/js.libraries/src/core/json.kt @@ -13,8 +13,15 @@ public fun json(vararg pairs: Pair): Json { return res } -@library("jsonAddProperties") -public fun Json.add(other: Json): Json = noImpl +public fun Json.add(other: Json): Json { + val keys: Array = js("Object").keys(other) + for (key in keys) { + if (other.asDynamic().hasOwnProperty(key)) { + this[key] = other[key]; + } + } + return this +} public external interface JsonClass { public fun stringify(o: Any): String diff --git a/js/js.libraries/src/js/kotlin_lib.js b/js/js.libraries/src/js/kotlin_lib.js index 966675f0ce5..5d161affa9b 100644 --- a/js/js.libraries/src/js/kotlin_lib.js +++ b/js/js.libraries/src/js/kotlin_lib.js @@ -340,14 +340,5 @@ Kotlin.arrayFromFun = function (size, initFun) { return result; }; -Kotlin.jsonAddProperties = function (obj1, obj2) { - for (var p in obj2) { - if (obj2.hasOwnProperty(p)) { - obj1[p] = obj2[p]; - } - } - return obj1; -}; - Kotlin.identityHashCode = getObjectHashCode;