跳转至

云函数内置函数库

EZtCloud 平台在消息规则与任务系统中深度集成了云函数功能,允许开发者通过 JavaScript 脚本实现复杂业务逻辑与数据处理。为进一步提升开发灵活性,平台精心设计了一套功能丰富的内置函数库,涵盖设备属性查询、数据类型转换、时间处理等高频场景,有效降低了云端代码开发的技术门槛。

这些内置工具采用模块化设计,开发者只需在云函数代码中直接调用即可快速实现特定功能。这种开箱即用的特性不仅显著缩短了开发周期,更让代码维护与功能迭代变得轻松高效。通过将通用功能封装为标准接口,平台帮助开发者聚焦核心业务逻辑,在保持系统扩展性的同时提升了整体开发效率。

设备信息

Cloud.getDeviceInfo()

读取当前设备信息

参数

返回值

  • object类型,设备信息键值对集合,例如:
{
    "id": 1017,                     // 设备ID
    "category": {...},              // 设备所属设备类型
    "serial_id": null,              // 设备序列号
    "name": "1#照明设备",       // 设备名称
    "username": "DU_d9Si73jjhX",    // 设备账号,用户使用设备账号密码进行链接平台设备
    "password": "hWtflSMKEJ",       // 设备密码 
    "code": "01",                   // 子设备地址,仅对子设备类型有效
    ... ...
}

示例

设备属性

Cloud.getCurrentAttributes()

读取设备所有属性当前值。

参数

返回值

  • object类型,设备信息键值对集合,例如:
{
  "attributes": {                                           // 设备属性
    "battery": {"time": 1741662315200,"value": 0},
    "temp": {"time": 1741662315200,"value": true},
    "humi": {"time": 1741662315200,"value": false},
    ......
  },
  "time": 1741662855738                                     // 设备属性最后更新时间
}

示例

数据类型转换函数

Cloud.int8ToHex(number)

将 8 位带符号整数转为十六进制的 HEX 字符串。

参数

  • number:带符号8位整数,范围从-128~127。

返回值

  • string类型:1个字节的HEX字符串。

示例

Cloud.int8ToHex(0)        // 00
Cloud.int8ToHex(127)      // 7F
Cloud.int8ToHex(-128)     // 80
Cloud.int8ToHex(-1)       // FF

Cloud.uint8ToHex(number)

将 8 位无符号整数转为十六进制的 HEX 字符串。

参数

  • number:无符号8位整数,范围从0~255。

返回值

  • string类型:1个字节的HEX字符串

示例

Cloud.uint8ToHex(0)       // 00
Cloud.uint8ToHex(127)     // 7F
Cloud.uint8ToHex(128)     // 80
Cloud.uint8ToHex(255)     // FF

Cloud.int16ToHex(number, endian)

将 16 位带符号整数转为十六进制的 HEX 字符串,默认使用大端字节序

参数

  • number:带符号16位整数,范围从-32768~32767。
  • endian:字节序,默认为大端字节序(‘>’),可选参数有大端字节序’>’,小端字节序’<’。

返回值

  • string类型:2个字节的HEX字符串。

示例

// 默认使用大端字节序
Cloud.int16ToHex(-32768)           // 8000
Cloud.int16ToHex(-1)               // FFFF
Cloud.int16ToHex(0)                // 0000
Cloud.int16ToHex(1)                // 0001
Cloud.int16ToHex(32767)            // 7FFF
// 使用小端字节序
Cloud.int16ToHex(-32768, '<')      // 0080
Cloud.int16ToHex(-1, '<')          // FFFF
Cloud.int16ToHex(0, '<')           // 0000
Cloud.int16ToHex(1, '<')           // 0100
Cloud.int16ToHex(32767, '<')       // FF7F

Cloud.uint16ToHex(number, endian)

将 16 位无符号整数转为十六进制的 HEX 字符串,默认使用大端字节序

参数

  • number:无符号16位整数,范围从0~65535。
  • endian:字节序,默认为大端字节序(‘>’),可选参数有大端字节序’>’,小端字节序’<’。

返回值

  • string类型:2个字节的HEX字符串。

示例

// 默认使用大端字节序
Cloud.uint16ToHex(0)               // 0000
Cloud.uint16ToHex(1)               // 0001
Cloud.uint16ToHex(32767)           // 7FFF
Cloud.uint16ToHex(65535)           // FFFF
// 使用小端字节序
Cloud.uint16ToHex(0, '<')          // 0000
Cloud.uint16ToHex(1, '<')          // 0100
Cloud.uint16ToHex(32767, '<')      // FF7F
Cloud.uint16ToHex(65535, '<')      // FFFF

Cloud.int32ToHex(number, endian)

将 32 位带符号整数转为十六进制的 HEX 字符串,默认使用大端字节序

参数

  • number:带符号32位整数,范围从-2147483648~2147483647。
  • endian:字节序,默认为大端字节序(‘ABCD’),可选参数有大端字节序’ABCD’,小端字节序’DCBA’和两个混合字节序’BADC’(大端模式字节交换)、‘CDAB’(小端模式字节交换)。

返回值

  • string类型:4个字节的HEX字符串。

示例

// 默认使用大端字节序
Cloud.int32ToHex(0)                  // 00000000
Cloud.int32ToHex(1)                  // 00000001
Cloud.int32ToHex(2147483647)         // 7FFFFFFF
Cloud.int32ToHex(-2147483648)        // 80000000
Cloud.int32ToHex(-1)                 // FFFFFFFF
// 使用小端字节序
Cloud.int32ToHex(0,'DCBA')           // 00000000
Cloud.int32ToHex(1,'DCBA')           // 01000000
Cloud.int32ToHex(2147483647,'DCBA')  // FFFFFF7F
Cloud.int32ToHex(-2147483648,'DCBA') // 00000080
Cloud.int32ToHex(-1,'DCBA')          // FFFFFFFF
// 使用混合字节序'BADC'(大端模式字节交换)
Cloud.int32ToHex(0,'BADC')           // 00000000
Cloud.int32ToHex(1,'BADC')           // 00000100
Cloud.int32ToHex(2147483647,'BADC')  // FF7FFFFF
Cloud.int32ToHex(-2147483648,'BADC') // 00800000
Cloud.int32ToHex(-1,'BADC')          // FFFFFFFF
// 使用混合字节序'CDAB'(小端模式字节交换)
Cloud.int32ToHex(0,'CDAB')           // 00000000
Cloud.int32ToHex(1,'CDAB')           // 00010000
Cloud.int32ToHex(2147483647,'CDAB')  // FFFF7FFF
Cloud.int32ToHex(-2147483648,'CDAB') // 00008000
Cloud.int32ToHex(-1,'CDAB')          // FFFFFFFF

Cloud.uint32ToHex(number, endian)

将 32 位无符号整数转为十六进制的 HEX 字符串,默认使用大端字节序

参数

  • number:无符号32位整数,范围从0~4294967295。
  • endian:字节序,默认为大端字节序(‘ABCD’),可选参数有大端字节序’ABCD’,小端字节序’DCBA’和两个混合字节序’BADC’(大端模式字节交换)、‘CDAB’(小端模式字节交换)。

返回值

  • string类型:4个字节的HEX字符串。

示例

// 默认使用大端字节序
Cloud.uint32ToHex(0)                          // 00000000
Cloud.uint32ToHex(1)                          // 00000001
Cloud.uint32ToHex(2147483647)                 // 7FFFFFFF
Cloud.uint32ToHex(2147483648)                 // 80000000
Cloud.uint32ToHex(4294967295)                 // FFFFFFFF
// 使用小端字节序
Cloud.uint32ToHex(0, 'DCBA')                  // 00000000
Cloud.uint32ToHex(1, 'DCBA')                  // 01000000
Cloud.uint32ToHex(2147483647, 'DCBA')         // FFFFFF7F
Cloud.uint32ToHex(2147483648, 'DCBA')         // 00000080
Cloud.uint32ToHex(4294967295, 'DCBA')         // FFFFFFFF
// 使用混合字节序'BADC'(大端模式字节交换)
Cloud.uint32ToHex(0, 'BADC')                  // 00000000
Cloud.uint32ToHex(1, 'BADC')                  // 00000100
Cloud.uint32ToHex(2147483647, 'BADC')         // FF7FFFFF
Cloud.uint32ToHex(2147483648, 'BADC')         // 00800000
Cloud.uint32ToHex(4294967295, 'BADC')         // FFFFFFFF
// 使用混合字节序'CDAB'(小端模式字节交换)
Cloud.uint32ToHex(0, 'CDAB')                  // 00000000
Cloud.uint32ToHex(1, 'CDAB')                  // 00010000
Cloud.uint32ToHex(2147483647, 'CDAB')         // FFFF7FFF
Cloud.uint32ToHex(2147483648, 'CDAB')         // 00008000
Cloud.uint32ToHex(4294967295, 'CDAB')         // FFFFFFFF

Cloud.float32ToHex(number, endian)

将 32 位 Float 单精度浮点数转为十六进制的 HEX 字符串,默认使用大端字节序

参数

  • number:单精度浮点数。
  • endian:字节序,默认为大端字节序(‘ABCD’),可选参数有大端字节序’ABCD’,小端字节序’DCBA’和两个混合字节序’BADC’(大端模式字节交换)、‘CDAB’(小端模式字节交换)。

返回值

  • string类型:4个字节的HEX字符串。

示例

// 默认使用大端字节序
Cloud.float32ToHex(0)                    // 00000000
Cloud.float32ToHex(10.123)               // 4121F7CF
Cloud.float32ToHex(-10.123)              // C121F7CF
Cloud.float32ToHex(5000.123)             // 459C40FC
Cloud.float32ToHex(-5000.123)            // C59C40FC
// 使用小端字节序
Cloud.float32ToHex(0, 'DCBA')            // 00000000
Cloud.float32ToHex(10.123, 'DCBA')       // CFF72141
Cloud.float32ToHex(-10.123, 'DCBA')      // CFF721C1
Cloud.float32ToHex(5000.123, 'DCBA')     // FC409C45
Cloud.float32ToHex(-5000.123, 'DCBA')    // FC409CC5
// 使用混合字节序'BADC'(大端模式字节交换)
Cloud.float32ToHex(0, 'BADC')            // 00000000
Cloud.float32ToHex(10.123, 'BADC')       // 2141CFF7
Cloud.float32ToHex(-10.123, 'BADC')      // 21C1CFF7
Cloud.float32ToHex(5000.123, 'BADC')     // 9C45FC40
Cloud.float32ToHex(-5000.123, 'BADC')    // 9CC5FC40
// 使用混合字节序'CDAB'(小端模式字节交换)
Cloud.float32ToHex(0, 'CDAB')            // 00000000
Cloud.float32ToHex(10.123, 'CDAB')       // F7CF4121
Cloud.float32ToHex(-10.123, 'CDAB')      // F7CFC121
Cloud.float32ToHex(5000.123, 'CDAB')     // 40FC459C
Cloud.float32ToHex(-5000.123, 'CDAB')    // 40FCC59C

Cloud.double64ToHex(number, endian)

将 64 位 Double 双精度浮点数转为十六进制的 HEX 字符串,使用大端字节序

参数

  • number:双精度浮点数。
  • endian:字节序,默认为大端字节序(‘>’),可选参数有大端字节序’>’,小端字节序’<’。

返回值

  • string类型:8 个字节的 HEX 字符串。

示例

// 默认使用大端字节序
Cloud.Utils.double64ToHex(0)                   // 0000000000000000
Cloud.Utils.double64ToHex(10000.123)           // 40C3880FBE76C8B4
Cloud.Utils.double64ToHex(-10000.123)          // C0C3880FBE76C8B4
Cloud.Utils.double64ToHex(500000.123)          // 411E84807DF3B646
Cloud.Utils.double64ToHex(-500000.123)         // C11E84807DF3B646
// 使用小端字节序
Cloud.Utils.double64ToHexLE(0, '<')            // 0000000000000000
Cloud.Utils.double64ToHexLE(10000.123, '<')    // B4C876BE0F88C340
Cloud.Utils.double64ToHexLE(-10000.123, '<')   // B4C876BE0F88C3C0
Cloud.Utils.double64ToHexLE(500000.123, '<')   // 46B6F37D80841E41
Cloud.Utils.double64ToHexLE(-500000.123, '<')  // 46B6F37D80841EC1

Cloud.hexToInt8(data)

将 十六进制的 HEX 字符串转为8 位带符号整数

参数

  • data:1个字节的十六进制 HEX 字符串。

返回值

  • number类型:8 位带符号整数

示例

Cloud.hexToInt8('00')     // 0
Cloud.hexToInt8('7F')      // 127
Cloud.hexToInt8('80')     // -128
Cloud.hexToInt8('FF')     // -1

Cloud.hexToUint8(data)

将 十六进制的 HEX 字符串转为8 位无符号整数

参数

  • data:1个字节的 HEX 字符串。

返回值

  • number类型:8 位无符号整数

示例

Cloud.hexToUint8('00')     // 00
Cloud.hexToUint8('7F')     // 127
Cloud.hexToUint8('80')     // 128
Cloud.hexToUint8('FF')     // 255

Cloud.hexToInt16(data, endian)

将 十六进制的 HEX 字符串转为16 位带符号整数

参数

  • data:2 个字节的 HEX 字符串。
  • endian:HEX 字符串的字节序,默认使用大端字节序(‘>’)解析,传入(‘<’)使用小端字节序解析。

返回值

  • number类型:16 位带符号整数

示例

// 默认使用大端字节序
Cloud.hexToInt16('8000')           // -32768
Cloud.hexToInt16('FFFF')           // -1
Cloud.hexToInt16('0000')           // 0
Cloud.hexToInt16('0001')           // 1
Cloud.hexToInt16('7FFF')           // 32767
// 使用小端字节序
Cloud.hexToInt16('0080', '<')      // -32768
Cloud.hexToInt16('FFFF', '<')      // -1
Cloud.hexToInt16('0000', '<')      // 0
Cloud.hexToInt16('0100', '<')      // 1
Cloud.hexToInt16('FF7F', '<')      // 32767

Cloud.hexToUint16(data, endian)

将 十六进制的 HEX 字符串转为16 位无符号整数

参数

  • data:2 个字节的 HEX 字符串。
  • endian:HEX 字符串的字节序,默认使用大端字节序(‘>’)解析,传入(‘<’)使用小端字节序解析。

返回值

  • number类型:16 位无符号整数

示例

// 默认使用大端字节序
Cloud.hexToUint16('0000')           // 0
Cloud.hexToUint16('0001')           // 1
Cloud.hexToUint16('7FFF')           // 32767
Cloud.hexToUint16('FFFF')           // 65535
// 使用小端字节序
Cloud.hexToUint16('0000', '<')      // 0
Cloud.hexToUint16('0100', '<')      // 1
Cloud.hexToUint16('FF7F', '<')      // 32767
Cloud.hexToUint16('FFFF', '<')      // 65535

Cloud.hexToInt32(data, endian)

将 十六进制的 HEX 字符串转为32 位带符号整数

参数

  • data:4 个字节的 HEX 字符串。
  • endian:HEX 字符串的字节序,默认为大端字节序(‘ABCD’)解析,可选参数有大端字节序’ABCD’,小端字节序’DCBA’和两个混合字节序’BADC’(大端模式字节交换)、‘CDAB’(小端模式字节交换)。

返回值

  • number类型:32 位带符号整数

示例

// 默认使用大端字节序
Cloud.hexToInt32('00000000')         // 0
Cloud.hexToInt32('00000001')         // 1
Cloud.hexToInt32('7FFFFFFF')         // 2147483647
Cloud.hexToInt32('80000000')         // -2147483648
Cloud.hexToInt32('FFFFFFFF')         // -1
// 使用小端字节序
Cloud.hexToInt32('00000000','DCBA')  // 0
Cloud.hexToInt32('01000000','DCBA')  // 1
Cloud.hexToInt32('FFFFFF7F','DCBA')  // 2147483647
Cloud.hexToInt32('00000080','DCBA')  // -2147483648
Cloud.hexToInt32('FFFFFFFF','DCBA')  // -1
// 使用混合字节序'BADC'(大端模式字节交换)
Cloud.hexToInt32('00000000','BADC')  // 0
Cloud.hexToInt32('00000100','BADC')  // 1
Cloud.hexToInt32('FF7FFFFF','BADC')  // 2147483647
Cloud.hexToInt32('00800000','BADC')  // -2147483648
Cloud.hexToInt32('FFFFFFFF','BADC')  // -1
// 使用混合字节序'CDAB'(小端模式字节交换)
Cloud.hexToInt32('00000000','CDAB')  // 0
Cloud.hexToInt32('00010000','CDAB')  // 1
Cloud.hexToInt32('FFFF7FFF','CDAB')  // 2147483647
Cloud.hexToInt32('00008000','CDAB')  // -2147483648
Cloud.hexToInt32('FFFFFFFF','CDAB')  // -1

Cloud.hexToUint32(data, endian)

将 十六进制的 HEX 字符串转为32 位无符号整数

参数

  • data:4 个字节的 HEX 字符串。
  • endian:HEX 字符串的字节序,默认为大端字节序(‘ABCD’)解析,可选参数有大端字节序’ABCD’,小端字节序’DCBA’和两个混合字节序’BADC’(大端模式字节交换)、‘CDAB’(小端模式字节交换)。

返回值

  • number类型:32 位无符号整数

示例

// 默认使用大端字节序
Cloud.hexToUint32('00000000')                 // 0
Cloud.hexToUint32('00000001')                 // 1
Cloud.hexToUint32('7FFFFFFF')                 // 2147483647
Cloud.hexToUint32('80000000')                 // 2147483648
Cloud.hexToUint32('FFFFFFFF')                 // 4294967295
// 使用小端字节序
Cloud.hexToUint32('00000000', 'DCBA')         // 0
Cloud.hexToUint32('01000000', 'DCBA')         // 1
Cloud.hexToUint32('FFFFFF7F', 'DCBA')         // 2147483647
Cloud.hexToUint32('00000080', 'DCBA')         // 2147483648
Cloud.hexToUint32('FFFFFFFF', 'DCBA')         // 4294967295
// 使用混合字节序'BADC'(大端模式字节交换)
Cloud.hexToUint32('00000000', 'BADC')         // 0
Cloud.hexToUint32('00000100', 'BADC')         // 1
Cloud.hexToUint32('FF7FFFFF', 'BADC')         // 2147483647
Cloud.hexToUint32('00800000', 'BADC')         // 2147483648
Cloud.hexToUint32('FFFFFFFF', 'BADC')         // 4294967295
// 使用混合字节序'CDAB'(小端模式字节交换)
Cloud.hexToUint32('00000000', 'CDAB')         // 0
Cloud.hexToUint32('00010000', 'CDAB')         // 1
Cloud.hexToUint32('FFFF7FFF', 'CDAB')         // 2147483647
Cloud.hexToUint32('00008000', 'CDAB')         // 2147483648
Cloud.hexToUint32('FFFFFFFF', 'CDAB')         // 4294967295

Cloud.hexToFloat32(data, endian)

将 十六进制的 HEX 字符串转为32 位单精度浮点数

参数

  • data:4 个字节的 HEX 字符串。
  • endian:HEX 字符串的字节序,默认为大端字节序(‘ABCD’)解析,可选参数有大端字节序’ABCD’,小端字节序’DCBA’和两个混合字节序’BADC’(大端模式字节交换)、‘CDAB’(小端模式字节交换)。

返回值

  • number类型:32 位单精度浮点数

示例

// 默认使用大端字节序
Cloud.hexToFloat32('00000000')                    // 0
Cloud.hexToFloat32('4121F7CF')                    // 10.123
Cloud.hexToFloat32('C121F7CF')                    // -10.123
Cloud.hexToFloat32('459C40FC')                    // 5000.123
Cloud.hexToFloat32('C59C40FC')                    // -5000.123
// 使用小端字节序
Cloud.hexToFloat32('00000000', 'DCBA')            // 0
Cloud.hexToFloat32('CFF72141', 'DCBA')            // 10.123
Cloud.hexToFloat32('CFF721C1', 'DCBA')            // -10.123
Cloud.hexToFloat32('FC409C45', 'DCBA')            // 5000.123
Cloud.hexToFloat32('FC409CC5', 'DCBA')            // -5000.123
// 使用混合字节序'BADC'(大端模式字节交换)
Cloud.hexToFloat32('00000000', 'BADC')            // 0
Cloud.hexToFloat32('2141CFF7', 'BADC')            // 10.123
Cloud.hexToFloat32('21C1CFF7', 'BADC')            // -10.123
Cloud.hexToFloat32('9C45FC40', 'BADC')            // 5000.123
Cloud.hexToFloat32('9CC5FC40', 'BADC')            // -5000.123 
// 使用混合字节序'CDAB'(小端模式字节交换)
Cloud.hexToFloat32('00000000', 'CDAB')            // 0
Cloud.hexToFloat32('F7CF4121', 'CDAB')            // 10.123
Cloud.hexToFloat32('F7CFC121', 'CDAB')            // -10.123
Cloud.hexToFloat32('40FC459C', 'CDAB')            // 5000.123
Cloud.hexToFloat32('40FCC59C', 'CDAB')            // -5000.123

Cloud.hexToDouble64(data, endian)

将 十六进制的 HEX 字符串转为64 位双精度浮点数

参数

  • data:8个字节的 HEX 字符串。
  • endian:字节序,默认为大端字节序(‘>’),可选参数有大端字节序’>’,小端字节序’<’。

返回值

  • number类型:64位双精度浮点数

示例

// 默认使用大端字节序
Cloud.Utils.double64ToHex('0000000000000000')         // 0
Cloud.Utils.double64ToHex('40C3880FBE76C8B4')         // 10000.123
Cloud.Utils.double64ToHex('C0C3880FBE76C8B4')         // -10000.123
Cloud.Utils.double64ToHex('411E84807DF3B646')         // 500000.123
Cloud.Utils.double64ToHex('C11E84807DF3B646')         // -500000.123
// 使用小端字节序
Cloud.Utils.double64ToHex('0000000000000000', '<')    // 0
Cloud.Utils.double64ToHex('B4C876BE0F88C340', '<')    // 10000.123
Cloud.Utils.double64ToHex('B4C876BE0F88C3C0', '<')    // -10000.123
Cloud.Utils.double64ToHex('46B6F37D80841E41', '<')    // 500000.123
Cloud.Utils.double64ToHex('46B6F37D80841EC1', '<')    // -500000.123

Cloud.hexToJson(data)

将 十六进制的 HEX 字符串转为 JSON对象

参数

  • datastring类型 有效的 HEX 字符串。

返回值

  • object类型:JSON对象。

示例

Cloud.hexToJson('7b226e616d65223a22e6b8a9e6b9bfe5baa6e79b91e6b58be4bca0e6849fe599a8222c2274656d7065726174757265223a33342c2268756d6964697479223a36347d')

// {"name":"温湿度监测传感器","temperature":34,"humidity":64}

Cloud.hexToStr(data)

将 十六进制的 HEX 转为 字符串。

参数

  • datastring类型 有效的 HEX 字符串。

返回值

  • string类型。

示例

Cloud.hexToStr("6162636431323334")   // abcd1234

Cloud.hexToBuffer(data)

将十六进制 HEX 字符串转为 Buffer 字节序列。

参数

  • datastring类型 有效的 HEX 字符串。

返回值

  • Buffer 字节流类型。

示例

Cloud.hexToBuffer("4150494F3D3432")   // Buffer 字节流 [65,80,73,79,61,52,50]

Cloud.bufferToHex(data)

将 Buffer 字节序列转为十六进制 HEX 字符串。

参数

  • dataBuffer 字节流类型。

返回值

  • string 类型:表示十六进制 HEX。

示例

// data 为 Buffer 字节流
Cloud.bufferToHex(data)   // 4150494F3D3432

Cloud.binToInt(data)

将 二进制序列转为十进制无符号整数。

参数

  • data:包含二进制数值的数组,例如:[0,1,0,0,1,0,0,0]

返回值

  • number 类型:无符号整数

示例

Cloud.binToInt([0,0,0,0,0,0,0,1])   // 1
Cloud.binToInt([0,0,0,0,0,0,1,1])   // 3
Cloud.binToInt([0,0,0,0,1,1,1,1])   // 15

Cloud.binToHex(data)

将 二进制序列转为十六进制 HEX 字符串。

参数

  • data:包含二进制数值的数组,例如:[0,1,0,0,1,0,0,0]

返回值

  • string 类型:十六进制 HEX 字符串。

示例

Cloud.binToHex([0,0,0,0,0,0,0,1])   // 01
Cloud.binToHex([0,0,0,0,0,0,1,1])   // 03
Cloud.binToHex([0,0,0,0,1,1,1,1])   // 0F

Cloud.hexToBin(data)

将 十六进制 HEX 字符串转为二进制序列。

参数

  • string 类型:十六进制 HEX 字符串。

返回值

  • object类型:包含二进制数值的数组,例如:[0,1,0,0,1,0,0,0]

示例

Cloud.binToHex('01')   // [0,0,0,0,0,0,0,1]
Cloud.binToHex('03')   // [0,0,0,0,0,0,1,1]
Cloud.binToHex('0F')   // [0,0,0,0,1,1,1,1]

Cloud.hexToBase64(data)

将 HEX 字符串转为 Base64 字符串。

参数

  • data:有效的十六进制 HEX 字符串。

返回值

  • string 类型:Base64 字符串。

示例

Cloud.hexToBase64("4150494F3D3432")   // QVBJTz00Mg==

Cloud.bufferToBase64(data)

将 Buffer 字节流类型转为 Base64 字符串。

参数

  • data:有效的 Base64 字符串。

返回值

  • string 类型:Base64 字符串。

示例

// data 二进制数据流
Cloud.bufferToBase64(data)     // QVBJTz00Mg==

Cloud.strToBase64(data)

将字符串转为 base64 编码的字符串。

参数

  • datastring 字符串类型。

返回值

  • string 类型,表示 base64 编码的字符串。

示例

Cloud.strToBase64("temperature=23.1,humitidy=56.2")
// dGVtcGVyYXR1cmU9MjMuMSxodW1pdGlkeT01Ni4y

Cloud.base64ToStr(data)

将 Base64 字符串解码为字符串。

参数

  • data:有效的 Base64 字符串。

返回值

  • string 类型。

示例

Cloud.base64ToHex("dGVtcGVyYXR1cmU9MjMuMSxodW1pdGlkeT01Ni4y")
// temperature=23.1,humitidy=56.2

Cloud.base64ToJson(data)

将 Base64 字符串解码为JSON对象。

参数

  • data:有效的 Base64 字符串。

返回值

  • object 类型:JSON对象。

示例

Cloud.base64ToJson('eyJuYW1lIjogIkpvaG4iLCAiYWdlIjogMzAsICJjaXR5IjogIk5ldyBZb3JrIn0=')
// {"age": 30,"city": "New York","name": "John"}

Cloud.base64ToHex(data)

将 Base64 字符串转为 HEX 十六进制字符串。

参数

  • data:有效的 Base64 字符串。

返回值

  • string 类型:HEX 字符串。

示例

Cloud.base64ToHex("QVBJTz00Mg==")     // 4150494f3d3432

Cloud.base64ToBuffer(data)

将 Base64 字符串转为 Buffer 字节序列。

参数

  • data:有效的 Base64 字符串。

返回值

  • Buffer 字节流类型。

示例

Cloud.base64ToBuffer("QVBJTz00Mg==")   // Buffer 字节流 [65,80,73,79,61,52,50]

Modbus RTU函数

Cloud.CRC16Modbus(data)

生成Modbus RTU报文的CRC16校验码。

参数

  • datastring类型 Modbus RTU报文,例如:'01 03 00 02 00 02'

返回值

  • string类型:CRC16校验码 ,例如:65 CB

示例

Cloud.CRC16Modbus('01 03 00 02 00 02')
// 65 CB