gpt4 book ai didi

javascript:如何将 Uint8Array 数据转换为 JS 对象

转载 作者:数据小太阳 更新时间:2023-10-29 04:17:13 24 4
gpt4 key购买 nike

我是 Javascript 和 JSON 世界的新手。我想知道如何将传入的 Uint8Array 数据 () 转换为 JS 对象?请提供任何帮助/指示。这是我所做的实验。

// arr is uint8Array incoming data
function myConvertFunc(arr) {
let str = "";
for (var i=0; i<arr.byteLength; i++) {
str += String.fromCharCode(arr[i]);
}

// Say, 'str' at this step looks like below :
/* {"type": "newEvent", "content": {"rec": [{"id1": "1", "event": "3A=","payload": "EZm9ydW0ub="}]}} */

var serializedData = JSON.stringify(str);
let message = JSON.parse(serializedData);

switch (message.type) {
case "newEvent":
log("In newEvent");
break;
.
.
.
default:
log("undefined message type");
}
}

与我的理解相反,默认案例日志:"undefined message type" 显示在我的日志中。有人可以帮我找出我的错误吗?

最佳答案

var serializedData = JSON.stringify(str);
let message = JSON.parse(serializedData);

这意味着如果 str === serializedData(或至少两个外观相同的对象)没有错误。

Say, 'str' at this step looks like below:

{"type": "newEvent", "content": {"rec": [{"id1": "1", "event": "3A=","payload": "EZm9ydW0ub="}]}}

现在,如果 str 是 JSON 字符串,那么您只需要

var message = JSON.parse(str);

目前,您对 JSON 字符串进行了 JSON 编码和解码,结果 message 再次成为该字符串,其 type 属性为 undefined

关于javascript:如何将 Uint8Array 数据转换为 JS 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16725822/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com