TS 里将Uint8Array 转成BUFEER类型
时间: 2023-12-20 08:05:27 浏览: 222
在 Node.js 中,可以使用 `Buffer.from()` 方法将 Uint8Array 转换成 Buffer,示例代码如下:
```typescript
const uint8Array = new Uint8Array([1, 2, 3, 4]);
const buffer = Buffer.from(uint8Array);
console.log(buffer);
```
输出结果为:
```
<Buffer 01 02 03 04>
```
这样就将 Uint8Array 成功转换成了 Buffer 类型。需要注意的是,在浏览器环境下是没有 Buffer 类型的,需要使用第三方库来模拟此功能。
相关问题
TS 下uint8array 转 buffer
在 TypeScript 下,可以使用以下代码将 Uint8Array 转换为 Buffer:
```typescript
const uint8Array = new Uint8Array([1, 2, 3, 4]);
const buffer = Buffer.from(uint8Array.buffer);
```
其中,`Uint8Array.buffer` 返回的是 ArrayBuffer,而 `Buffer.from` 方法可以将 ArrayBuffer 转换为 Buffer。注意,这里需要使用 `Buffer.from` 方法来创建 Buffer,而不能直接使用 `new Buffer()`,因为 `new Buffer()` 构造函数已经被标记为废弃了。
new Uint8Array ts报错
在 TypeScript 中,`Uint8Array` 是一种数组类型,它存储的是 8 位无符号整数。如果出现 `new Uint8Array` 的报错,那么可能是你没有正确地使用该类型。
下面是一些可能导致该报错的常见错误:
1. 没有正确引入 Uint8Array 类型。你需要在代码顶部添加以下引用语句:
```
import { Uint8Array } from 'typedarray';
```
2. 传递给 `new Uint8Array` 构造函数的参数类型不正确。`new Uint8Array` 的参数必须是一个数组或者一个 ArrayBuffer 对象。如果你传递了一个不是数组或 ArrayBuffer 的对象,那么就会出现该报错。
3. 在支持 TypeScript 的 IDE 中,可能会出现类型推断错误,这也会导致 `new Uint8Array` 报错。这时候你可以手动指定类型,例如:
```
const myArray: Uint8Array = new Uint8Array(8);
```
以上是一些可能导致 `new Uint8Array` 报错的原因,你可以根据具体情况进行排查。
阅读全文