gpt4 book ai didi

javascript - 为什么这个循环会破坏我的代码?

转载 作者:行者123 更新时间:2023-12-03 03:05:01 26 4
gpt4 key购买 nike

公平警告,我是 javascript 和 ool 的新手。我正在尝试编写一个简单的脚本来将数据解析到网络套接字。该脚本应该能够处理无限数量的有效负载。

这段代码可以工作,尽管一次只能处理有效负载:

#!/usr/bin/env node 
var io = require('socket.io-client');
var i=1

socket = io.connect('http://10.0.9.1:80');
var data = JSON.parse(process.argv[2]);
socket.on('connect', function(){
console.log('Emitting');
socket.emit('widget', data);
process.exit(0);
});

用逻辑测试将代码包装在循环中会破坏它。没有语法错误,但是好像没有调用emit方法。

#!/usr/bin/env node 
var io = require('socket.io-client');
var i=1
var data

while (true) {
i++
if ( process.argv[i] ) {
socket = io.connect('http://10.0.9.1:80');
data = JSON.parse(process.argv[2]);
socket.on('connect', function(){
console.log('Emitting');
socket.emit('widget', data);
});
} else {
process.exit(0);
};
};

最佳答案

您创建的套接字是异步的,因此您最终会创建一堆套接字,然后在建立连接之前调用 process.exit(0)

关于javascript - 为什么这个循环会破坏我的代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47208714/

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