如何从Kotlin调用JavaScript删除?

我正在和Kotlin的第三方图书馆合作,我必须做的delete thing[key]就是调用delete thing[key] ,以便从东西中删除一个项目。 我无法弄清楚如何从Kotlin代码做到这一点。

我尝试了js("delete thing[key]") ,但是thing是一个函数的参数,并被Kotlin> JavaScript编译器改名,所以执行该行时会引发异常。 我也试过js("delete ") thing[key]但毫不奇怪,也没有工作。

对于delete操作你可以写:

 native fun delete(p: dynamic): Boolean = noImpl //... delete(thing[key]) 

为了更方便的使用,我添加了一些帮手:

 fun delete(thing: dynamic, key: String) { delete(thing[key]) } // or fun String.deleteFrom(d: dynamic) { delete(d[this]) } fun test(a: Any, k: String) { delete(a, k) k.deleteFrom(a) k deleteFrom a } 

注意:使用delete操作符不是一个好的做法,它会导致JS VM中的优化