gpt4 book ai didi

javascript - 在 JavaScript 中 : Is a function parameter variable (at the moment of function declaration) equivalent to declaring a variable?

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

我目前正在研究 JavaScript 中的变量和作用域(来自 Kyle Simpson 的 YDKJS 系列),我想我了解编译器如何在遇到以下情况时在适当的作用域中“为变量 a 分配内存”显式变量声明,例如 var a;。我的问题是:在函数声明的情况下,例如 function foo(a) {...}; 如果 a 尚未在其他地方声明为变量,编译器是否“声明”该变量以便它存在于函数的范围内?还是 a 在函数被调用 foo(3); 并且 a 被赋值之前“不存在”?

抱歉,如果这不相关或者太基础了。我试图完全掌握范围和变量声明的概念,但我无法通过一些研究来回答或找到它。

提前致谢!

最佳答案

是的,命名函数参数是一个声明,就像 var a 一样。进入作用域(在本例中为函数作用域)时,会为所有声明的变量保留内存。然后使用传递的参数 (3) 对其进行初始化 - 如果未传递任何参数,则使用 undefined 进行初始化。

关于javascript - 在 JavaScript 中 : Is a function parameter variable (at the moment of function declaration) equivalent to declaring a variable?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50051499/

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