const header = 0xAA; //链路层协议报文头标识 var ntr = 20; //必须应答的最大报文个数 最大39 var send_ntr = 0; //已经发送的 ntr数 var rto = 200; //应答超时时间 var mcp = 20; //可连续发生的ntr个数 最大20 var receiver_ntr_count = 0; //连续收到的报文个数 var receiverBlueEmsData = [] //接收到的蓝牙报文队列 var receiverEmsData = [] //接收到的报文队列 var receiverCurrentPackLenght = 0; //已接收报文的长度 var receiver_cmd = 0; //接收到的命令号 var send_array = []; //待发送数据报文 var rto_send_package = 0; //rto 定时发送数量 var linkTimer; const app = getApp(); const defaultByteLength = 16; const packeByteLength = 20; var todo_send_blue_data = [] //数据发送队列 var _applicationWatch; //应用层监听器 var lastSendData = [] //上次发送数据的缓存 var lastSendResult = true; //上次是否发送成功请帮我封装这些代码
时间: 2023-11-18 15:02:18 浏览: 120
一个基于WebAssembly和Duktape / QuickJS的安全评估库。-C/C++开发
封装这些代码可以使用一个函数来实现,如下所示:
```javascript
function initializeVariables() {
const header = 0xAA; //链路层协议报文头标识
var ntr = 20; //必须应答的最大报文个数 最大39
var send_ntr = 0; //已经发送的 ntr数
var rto = 200; //应答超时时间
var mcp = 20; //可连续发生的ntr个数 最大20
var receiver_ntr_count = 0; //连续收到的报文个数
var receiverBlueEmsData = [] //接收到的蓝牙报文队列
var receiverEmsData = [] //接收到的报文队列
var receiverCurrentPackLenght = 0; //已接收报文的长度
var receiver_cmd = 0; //接收到的命令号
var send_array = []; //待发送数据报文
var rto_send_package = 0; //rto 定时发送数量
var linkTimer;
const app = getApp();
const defaultByteLength = 16;
const packeByteLength = 20;
var todo_send_blue_data = [] //数据发送队列
var _applicationWatch; //应用层监听器
var lastSendData = [] //上次发送数据的缓存
var lastSendResult = true; //上次是否发送成功
// 返回封装后的变量对象
return {
header,
ntr,
send_ntr,
rto,
mcp,
receiver_ntr_count,
receiverBlueEmsData,
receiverEmsData,
receiverCurrentPackLenght,
receiver_cmd,
send_array,
rto_send_package,
linkTimer,
app,
defaultByteLength,
packeByteLength,
todo_send_blue_data,
_applicationWatch,
lastSendData,
lastSendResult
};
}
// 调用函数初始化变量
var variables = initializeVariables();
```
通过调用`initializeVariables()`函数,可以将变量封装在一个对象中,以便在其他地方使用。这样可以保持代码的整洁性和可读性。
阅读全文