scala.js之是否可以组合两个 js.Dynamic 对象
Demo
阅读:131
2025-06-02 22:19:02
评论:0
说我有
val obj1 = js.Dynamic.literal(attr1 = "x")
val obj2 = js.Dynamic.literal(attr2 = "y")
我想结合 obj1 和 obj2 来产生和对象
{attr1 = "x", attr2 = "y"}
js.Dynamic 有没有办法产生这样的组合?
请您参考如下方法:
没有现有的方法可以做到这一点。在 ES6 中有 Object.assign ,但在 IE 中不受支持。
我建议在 Scala.js 中重新实现它:
def mergeJSObjects(objs: js.Dynamic*): js.Dynamic = {
val result = js.Dictionary.empty[Any]
for (source <- objs) {
for ((key, value) <- source.asInstanceOf[js.Dictionary[Any]])
result(key) = value
}
result.asInstanceOf[js.Dynamic]
}
现在你可以简单地做
mergeJSObjects(obj1, obj2)
声明
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。



