Serialize类
SerialBuffer
构造函数
new SerialBuffer(__namedParameters?: object): SerialBuffer参数:
Default value __namedParameters:object
array:如果序列化或要反序列化的二进制数据,则为null。textEncoder:要使用的TextEncoder实例,如果在浏览器中运行,则传入null。textDecoder:要使用的TextDecider实例,如果在浏览器中运行,则传入null。
| 名称 | 类型 |
|---|---|
| array | Uint8Array |
| textDecoder | TextDecoder |
| textEncoder | TextEncoder |
返回:SerialBuffer
属性
array
- array:
Uint8Array
序列化(二进制)形式的数据。
length
- length:
number
array中的有效数据量。
readPos
- readPos:
number= 0
读取时的当前位置(反序列化)。
textDecoder
- textDecoder:
TextDecoder
textEncoder
- textEncoder:
TextEncoder
方法
asUint8Array
asUint8Array(): Uint8Array删除多余存储后返回数据。
返回:Uint8Array
get
get(): number获取单个字节。
返回:number
getAsset
getAsset(): string获取asset。
返回:string
getBytes
getBytes(): Uint8Array获取带长度前缀的二进制数据。
返回:Uint8Array
getFloat32
getFloat32(): number获取float32。
返回:number
getFloat64
getFloat64(): number获取float64。
返回:number
getName
getName(): string获取name。
返回:string
getPrivateKey
getPrivateKey(): string获取私钥。
返回:string
getPublicKey
getPublicKey(): string获取公钥。
返回:string
getSignature
getSignature(): string获得签名。
返回:string
getString
getString(): string获取字符串。
返回:string
getSymbol
getSymbol(): object获取symbol。
返回:object
getSymbolCode
getSymbolCode(): string获取symbol_code,与symbol不同,symbol_code不包含精度。
返回:string
getUint16
getUint16(): number获取uint16。
返回:number
getUint32
getUint32(): number获取uint32。
返回:number
getUint64AsNumber
getUint64AsNumber(): number获取uint64作为number,注意:number只有53位精度,有些值会改变,建议使用numeric.binaryToDecimal(serialBuffer.getUint8Array(8))。
返回:number
getUint8Array
getUint8Array(len: number): Uint8Array获取len个字节。
参数:
| 名称 | 类型 |
|---|---|
| len | number |
返回:Uint8Array
getVarint32
getVarint32(): number获取varint32。
返回:number
getVaruint32
getVaruint32(): number获取varuint32。
返回:number
haveReadData
haveReadData(): boolean有数据可供读取吗?
返回:boolean
push
push(...v: number[]): void附加字节。
参数:
| 名称 | 类型 |
|---|---|
Rest v | number[] |
返回:void
pushArray
pushArray(v: number[] | Uint8Array): void附加字节。
参数:
| 名称 | 类型 |
|---|---|
| v | number[] | Uint8Array |
返回:void
pushAsset
pushAsset(s: string): void附加asset。
参数:
| 名称 | 类型 |
|---|---|
| s | string |
返回:void
pushBytes
pushBytes(v: number[] | Uint8Array): void附加长度前缀的二进制数据。
参数:
| 名称 | 类型 |
|---|---|
| v | number[] | Uint8Array |
返回:void
pushFloat32
pushFloat32(v: number): void附加float32。
参数:
| 名称 | 类型 |
|---|---|
| v | number |
返回:void
pushFloat64
pushFloat64(v: number): void附加float64。
参数:
| 名称 | 类型 |
|---|---|
| v | number |
返回:void
pushName
pushName(s: string): void附加name。
参数:
| 名称 | 类型 |
|---|---|
| s | string |
返回:void
pushNumberAsUint64
pushNumberAsUint64(v: number): void附加一个uint64,注意:number只有53位精度。
参数:
| 名称 | 类型 |
|---|---|
| v | number |
返回:void
pushPrivateKey
pushPrivateKey(s: string): void附加私钥。
参数:
| 名称 | 类型 |
|---|---|
| s | string |
返回:void
pushPublicKey
pushPublicKey(s: string): void附加公钥。
参数:
| 名称 | 类型 |
|---|---|
| s | string |
返回:void
pushSignature
pushSignature(s: string): void附加签名。
参数:
| 名称 | 类型 |
|---|---|
| s | string |
返回:void
pushString
pushString(v: string): void附加一个字符串。
参数:
| 名称 | 类型 |
|---|---|
| v | string |
返回:void
pushSymbol
pushSymbol(__namedParameters: object): void附加symbol。
参数:
__namedParameters:object
| 名称 | 类型 |
|---|---|
| name | string |
| precision | number |
返回:void
pushSymbolCode
pushSymbolCode(name: string): void附加symbol_code,与symbol不同,symbol_code不包含精度。
参数:
| 名称 | 类型 |
|---|---|
| name | string |
返回:void
pushUint16
pushUint16(v: number): void附加一个uint16。
参数:
| 名称 | 类型 |
|---|---|
| v | number |
返回:void
pushUint32
pushUint32(v: number): void附加一个uint32。
参数:
| 名称 | 类型 |
|---|---|
| v | number |
返回:void
pushUint8ArrayChecked
pushUint8ArrayChecked(v: Uint8Array, len: number): void在v中附加字节,如果len与v.length不匹配则抛出。
参数:
| 名称 | 类型 |
|---|---|
| v | Uint8Array |
| len | number |
返回:void
pushVarint32
pushVarint32(v: number): void附加varint32。
参数:
| 名称 | 类型 |
|---|---|
| v | number |
返回:void
pushVaruint32
pushVaruint32(v: number): void附加varuint32。
参数:
| 名称 | 类型 |
|---|---|
| v | number |
返回:void
reserve
reserve(size: number): void如果需要至少有size字节空闲,请调整array的大小。
参数:
| 名称 | 类型 |
|---|---|
| size | number |
返回:void
restartRead
restartRead(): void从头开始重新开始读取。
返回:void
SerializerState
构造函数
new SerializerState(options?: SerializerOptions): SerializerState参数:
| 名称 | 类型 | 默认值 |
|---|---|---|
Default value options | SerializerOptions | {} |
返回:SerializerState
属性
options
- options:
SerializerOptions
skippedBinaryExtension
- skippedBinaryExtension:
boolean=false
是否已跳过任何二进制扩展名?