JavaScript:函数
2021-04-11 11:25
标签:console 就是 命令 def doc efi oba 箭头函数 develop function 命令 函数表达式 Function构造函数 箭头函数 JavaScript 引擎将函数名视同变量名,所以采用 但是,如果采用赋值语句定义函数,JavaScript 就会报错。 JavaScript 只有两种作用域:一种是全局作用域,变量在整个程序中一直存在,所有地方都可以读取;另一种是函数作用域,变量只在函数内部存在。 对于顶层函数来说,函数外部声明的变量就是全局变量(global variable),它可以在函数内部读取。 在函数内部定义的变量,外部无法读取,称为“局部变量”(local variable)。 JavaScript:函数 标签:console 就是 命令 def doc efi oba 箭头函数 develop 原文地址:https://www.cnblogs.com/qianmo39/p/13359980.html函数声明方式
function f(x, y) {
return x + y;
}
var f = function(x, y) {
return x + y;
}
var f = new Function(‘x‘, ‘y‘, ‘return x + y‘);
var f = (x, y) => { return x + y; }
函数声明提升
function
命令声明函数时,整个函数会像变量声明一样,被提升到代码头部。hoisted(); // "foo"
function hoisted() {
console.log("foo");
}
// 等同于
function hoisted() {
console.log("foo");
}
hoisted(); // "foo"
hoisted(); // TypeError: hoisted is not a function
var hoisted = function () {
console.log("foo");
}
// 等同于
var = hoisted;
hoisted(); // TypeError: hoisted is not a function
hoisted = function () {
console.log("foo");
}
函数作用域
定义
var a = 1;
function f() {
console.log(a);
}
f(); // 1
function f() {
var a = 1;
}
console.log(a); // ReferenceError: a is not defined
函数内部变量提升
function f() {
console.log(a);
var a = 1;
}
f() // undefined
// 等同于
function f() {
var a;
console.log(a);
a = 1;
}
f() // undefined
参考资料