gpt4 book ai didi

javascript - 函数名是否充当变量?

转载 作者:行者123 更新时间:2023-11-30 15:20:20 25 4
gpt4 key购买 nike

我对下面这段代码有疑问:

function myfunc () {
return 2 + 2;
}

console.log(myfunc);

有谁知道为什么当我们将“myfunc”记录到控制台时,我们会返回整个函数本身?或者换句话说,“myfunc”是用作保存函数内容的变量,还是只是引用该函数?

因为如果我继续并将其添加到代码中...

myfunc = undefined; //or any other value like myfunc = 20;

...然后因为 myfunc 的值改变了,我不能再用它来调用函数。那么“myfunc”到底是什么?

最佳答案

答案是,函数声明在局部函数作用域(或全局作用域,如果声明在该上下文中)创建一个符号,其工作方式与使用 var 声明的变量完全相同(尽管函数声明被提升到 var 声明之上)。

现在,函数表达式如下:

var x = function helloWorld() { return "hello world"; };

创建本地“helloWorld”符号(except when it does) .函数表达式的值是对创建的函数的引用,可以像任何其他值一样分配给变量。

关于javascript - 函数名是否充当变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43837411/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com