[英]Casting an object to an Array using Array.from
我正在嘗試從 WebSocket 的字符串化數據創建一個ArrayBuffer
。
字符串化的數據是一個Float32Array
。
這是我的嘗試:
var parsed = JSON.parse(streamData);
var arrayed = Array.from(parsed);
var arr32 = Float32Array.from(arrayed);
var kbuff = new ArrayBuffer(arr32);
parsed
的變量如下所示:
但隨后我的Array.from
導致一個空數組:
我在這里缺少什么? 並且 - 這是創建我的ArrayBuffer
的正確方法嗎?
Array.from()
要求對象具有長度屬性。 使用Object.values()
代替:
const parsed = { 0: 'a', 1: 'b', 2: 'c', } const arrayed1 = Array.from(parsed); const arrayed2 = Object.values(parsed); console.log({ arrayed1 }); console.log({ arrayed2 });
對於 Array.from 需要具有屬性長度的可迭代參數。 嘗試使用 Object.values(parsed) 從解析的值中獲取數組,然后使用 Float32Array,似乎可以幫助您。 或者你可以從 pais [key, value] 使用 Objest.entries(parsed) 獲取數組
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.