从开始执行的时间点上来看,Node.js 中的所有语句都是顺序执行的。
但是,由于 Node.js 的异步特性,先开始执行并不意味着先执行完毕。这就造成了 Node.js 似乎没有顺序执行的假象。
需要注意的几个要点:
- 语句:不包括变量的定义(定义是在执行前加载模块的时候完成的),但是包括变量的赋值。
// 例子:
var a = 10
// 应该被看作:
var a
a = 10
// 前者不是语句,后者是语句。
- 变量:包括函数,因为函数可以用变量的格式定义,也可以用作参数。
// 例子:
function add(a, b) {
returns a + b
}
// 等同于:
var add = function(a, b) {
returns a + b
}