Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/33.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在Node.js中执行上述指令之前,先执行该指令_Javascript_Node.js - Fatal编程技术网

Javascript 在Node.js中执行上述指令之前,先执行该指令

Javascript 在Node.js中执行上述指令之前,先执行该指令,javascript,node.js,Javascript,Node.js,当我执行下面的代码时: const https = require('https'); const req = https.get('https://www.google.com', (res) => { console.log('message'); }) console.log('message2'); 我得到的结果是: message2 message 这是为什么?这是因为https.get是异步的,所以NodeJs不等待这个调用,而是立即执行console.log('

当我执行下面的代码时:

const https = require('https');

const req = https.get('https://www.google.com', (res) => {
   console.log('message');
})

console.log('message2');
我得到的结果是:

message2
message

这是为什么?

这是因为
https.get
是异步的,所以NodeJs不等待这个调用,而是立即执行
console.log('message2')
这样我们就不能等待异步调用完成并继续执行某些操作。在该请求成功完成后,您将获得
console.log('message')

这是否回答了您的问题?您需要仔细观察,以更好地理解异步行为