JS不能向WASM传递数组?

简介: JS不能向WASM传递数组?

  自从把OFFICE编译为wasm之后,吾就想解决怎样传递数组的事情。结果在TeaVM问题列表中,看到这样一个内容:


https://github.com/konsoletyper/teavm/issues/379


There's no way to transfer arrays between JavaScript and WebAssembly. So there's no way to transfer array between TeaVM/WebAssembly and JavaScript. If you want to transfer complex data structures between Java and JavaScript, you should prefer JavaScript target. Currently, targetting to WebAssembly gives no benefits, either in performance or memory consumption.


没有办法在JS和Wasm之间传递数组。所以没有办法在TeaVM和JS之间传递数组。如果你想在Java和JS之间传递复杂数据结构的话, 你应该使用JS target。目前这样做没有好处,性能和内存都一样。


is there a way to read & write from WebAssembly Memory(HEAP)


能否使用HEAP读写呢?



分析:


为什么不能传递数组呢?道理也简单,JS的数组是包含多种内容,在内存中乱七八糟。wasm想访问传递进来的数组,必须通过JS接口才有可能(肯定要再套一层)。而Wasm中没有对应的结构。


以目前来看,wasm提供一个访问方法,应该是唯一可行的办法。说起来容易,怎么做呢?


目录
相关文章
|
2月前
|
自然语言处理 前端开发 JavaScript
🛠️ JavaScript数组操作指南:20个精通必备技巧🚀
本文详细介绍了 JavaScript 中的 20 个高效数组操作技巧,涵盖了从基本的添加、移除元素,到数组转换和去重等高级操作。强调了不可变性的重要性,提供了清晰的代码示例,帮助开发者编写更整洁和高效的代码。无论是新手还是经验丰富的开发者,这些技巧都将显著提升您的编码能力,使您在项目中更具竞争力。
44 2
|
2月前
|
JavaScript 前端开发 测试技术
JS都有哪些操作数组的方法
JS都有哪些操作数组的方法
41 3
|
2月前
|
JavaScript
js删除数组中已知下标的元素
js删除数组中已知下标的元素
51 4
|
2月前
|
缓存 JavaScript 前端开发
JavaScript中数组、对象等循环遍历的常用方法介绍(二)
JavaScript中数组、对象等循环遍历的常用方法介绍(二)
52 1
|
2月前
|
JavaScript 前端开发 Java
【javaScript数组,函数】的基础知识点
【javaScript数组,函数】的基础知识点
32 5
|
2月前
|
JavaScript 前端开发 索引
探索JavaScript数组:基础
探索JavaScript数组:基础
21 3
|
2月前
|
JavaScript 前端开发 索引
JS 删除数组元素( 5种方法 )
JS 删除数组元素( 5种方法 )
76 1
|
2月前
|
JavaScript 前端开发 API
JS中数组的方法flat()怎么用
JS中数组的方法flat()怎么用
30 0
|
2月前
|
JavaScript 前端开发 索引
JavaScript中数组、对象等循环遍历的常用方法介绍(一)
JavaScript中数组、对象等循环遍历的常用方法介绍(一)
41 0
|
2月前
|
前端开发 JavaScript 索引
JavaScript 数组常用高阶函数总结,包括插入,删除,更新,反转,排序等,如map、splice等
JavaScript数组的常用高阶函数,包括遍历、插入、删除、更新、反转和排序等操作,如map、splice、push、pop、reverse等。
24 0