Javascript 关于(if和esle if函数)的过程

Javascript 关于(if和esle if函数)的过程,javascript,Javascript,例如,我有这个代码 if ( false ) { // 1000 lines of code } else if { // 1000 lines of code } else { code(true) } 我想知道,当运行此代码时,如果if和else if的值都为false,机器会立即运行else逻辑,或者同时运行这两个代码(1000行代码)下面的if和else if将首先阅读并花费时间?语言解析是一项复杂的工作,向某人解释这一点需要大学模块,而不是堆栈溢出答案 但简

例如,我有这个代码

if ( false ) 
{
    // 1000 lines of code
} else if {
    // 1000 lines of code
} else {
    code(true)
}

我想知道,当运行此代码时,如果
if
else if
的值都为false,机器会立即运行
else
逻辑,或者同时运行这两个代码(1000行代码)下面的
if
else if
将首先阅读并花费时间?

语言解析是一项复杂的工作,向某人解释这一点需要大学模块,而不是堆栈溢出答案

但简而言之,我可以这样说:

  • 未执行的块仍必须进行分析和解释
  • 但是,它不会被执行。它的变量不会被声明或给定值,它的函数调用也不会发生

您含蓄地回答了为什么在运行整个脚本之前必须对其进行分析:变量和函数可以在使用点之后声明。@Kay:比这更简单:如果不分析该块,解释器将不知道它的结尾。