结果应该是什么?为什么?

问题描述 投票:0回答:2

我很困惑为什么即使遇到错误后仍会打印一、二和三。

这是代码:

setTimeout(() => {
  console.log("one");
}, 1000);
setTimeout(() => {
  console.log("two");
}, 2000);
setTimeout(() => {
  console.log("three");
}, 3000);

console.log(neha);

我期望只是一个错误,而不打印设置超时值,根据我的知识,js 引擎首先运行 console.log,然后在特定时间范围后设置超时。如果我错了,请纠正我,我也是 Stackoverflow 的新手。这是我的第一个问题。

here is the output of my code

javascript settimeout
2个回答
2
投票

setTimeout
将新的消息插入到事件循环的队列中。每条消息都会被处理,如果发生错误,该具体消息的执行就会停止,但队列中的消息的执行(处理)会继续。


-4
投票

如果这是您的整个代码,那么 neha 不是变量。 如果你想在控制台中打印 neha 试试这个。

console.log('neha');

这里 neha 是一个字符串。你现在不应该得到错误。

或者,如果 neha 是一个具有字符串等类型的变量,那么首先声明它。然后console.log它。

let neha='some string or object';
console.log(neha);
© www.soinside.com 2019 - 2024. All rights reserved.