Javascript 等于函数的变量是否被视为全局变量?

Javascript 等于函数的变量是否被视为全局变量?,javascript,scope,global-variables,Javascript,Scope,Global Variables,在我的一个测验中,我们被要求确定以下代码块中有多少全局变量: var one = 1; var two = 2; var multiplier = function(number){ } 我回答说有两个:一个和两个。然而,我的老师把它标错了,说有3个全局变量。等于函数的变量是否仍被视为全局变量?函数在Javascript中是一流的,可以分配给任何变量。变量可以保存任何值—数字(如one和two)、字符串等、对象或函数 恰好指向某个函数的全局变量(如乘数)仍然是全

在我的一个测验中,我们被要求确定以下代码块中有多少全局变量:

    var one = 1;
    var two = 2;
    var multiplier = function(number){
    }

我回答说有两个:一个和两个。然而,我的老师把它标错了,说有3个全局变量。等于函数的变量是否仍被视为全局变量?

函数在Javascript中是一流的,可以分配给任何变量。变量可以保存任何值—数字(如
one
two
)、字符串等、对象或函数

恰好指向某个函数的全局变量(如
乘数
)仍然是全局变量

请注意,顶层的函数声明也会创建全局变量,例如:

函数乘数(数字){
}
//函数声明在全局对象上创建了一个属性:
console.log(窗口类型、乘数);
//就像:
Var1=1;

控制台日志(窗口类型1)是的,在JavaScript中,函数是一级对象,这意味着它们可以:a)存储在变量、对象或数组中。b) 作为参数传递给函数。c) 从函数返回。更多信息是的,有3个全局变量。这很有意义。非常感谢,这是非常清楚和简洁的。