【发布时间】:2018-05-07 02:10:34
【问题描述】:
** Javascript 新手。请帮忙**
我正在用 Javascript 编写一个简单的“for”循环,但没有得到预期的输出。请求帮助。
for (i = 1; i < 5; i++) {
console.log(i + ": " + makeARestCall(options));
}
function makeARestCall(options) {
request(options, function(error, response, body) {
if (error) throw new Error(error);
let test = getCount(body);
console.log("Hello: " + test);
});
}
function getCount(body) {
const data = JSON.parse(body.toString()).test.all;
return data;
}
makeArestCall(options) - 函数对服务进行 Rest 调用并获取一些数据。 getCount(body) - 从从 makeArestCall 函数接收到的 JSON 返回一个值。
我是如何执行的:使用 Javascript 编写 Mocha 测试。
当前输出是多少:
1: undefined
2: undefined
3: undefined
4: undefined
Hello: 35
Hello: 35
Hello: 35
Hello: 35
我在期待什么?
1: Hello: 35
2: Hello: 35
3: Hello: 35
4: Hello: 35
看起来'for'循环运行得如此之快,并且makeArestcall需要时间来执行,因为它需要几秒钟的执行时间。请帮助我如何获得所需的输出。
【问题讨论】:
标签: javascript node.js mocha.js webdriver-io