Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/409.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停止工作?_Javascript_Browser - Fatal编程技术网

当浏览器中某行出现错误时,有多少JavaScript停止工作?

当浏览器中某行出现错误时,有多少JavaScript停止工作?,javascript,browser,Javascript,Browser,web页面中的JS由多个标记组成,这些标记加载并执行文件,或者在内联标记的情况下直接执行代码。现在假设其中一个脚本由于错误而停止在某个特定行上执行,那么其他脚本也会停止吗?换句话说,浏览器在错误发生时暂停解释和执行一段代码的操作是在标记级别还是全局级别上完成的 换句话说,浏览器在错误发生时暂停解释和执行一段代码的操作是在标记级别还是全局级别上完成的 那要看情况 语法错误意味着由给定的脚本标记加载的整个脚本将无法工作,因为无法解析代码 运行时错误只意味着错误发生时发生的任何事情都将终止(如果它没有

web页面中的JS由多个标记组成,这些标记加载并执行文件,或者在内联标记的情况下直接执行代码。现在假设其中一个脚本由于错误而停止在某个特定行上执行,那么其他脚本也会停止吗?换句话说,浏览器在错误发生时暂停解释和执行一段代码的操作是在标记级别还是全局级别上完成的

换句话说,浏览器在错误发生时暂停解释和执行一段代码的操作是在标记级别还是全局级别上完成的

那要看情况

语法错误意味着由给定的
脚本
标记加载的整个脚本将无法工作,因为无法解析代码

运行时错误只意味着错误发生时发生的任何事情都将终止(如果它没有处理错误)。但只有在发生错误时正在运行的作业才会终止;由相同的
脚本
标记加载的其他代码将继续工作

示例:此代码中有语法错误,因此所有代码都不起作用:

document.getElementById(“btn”).addEventListener(“单击”,函数(){
控制台日志(“单击”);
},假);
//这是语法错误:
如果
单击此按钮不会执行任何操作:


换句话说,在一个进程中发生的任何事情(执行一块同步代码)要么完成,要么失败?这就是你说任务的意思吗?@vijayant-主要是,是的。作业/任务(作业是JS术语,任务是HTML/浏览器术语)是代码执行的工作单元。有一个作业排队运行
脚本中的主代码,但该代码可以进行设置,以便其他作业(事件处理程序回调、计时器回调、异步完成)将后续作业排队。作业运行到完成,无论该完成是正常终止还是错误终止。一个作业中的错误不会阻止其他作业运行(当然,除非它们依赖于前一个作业的结果)。