gpt4 book ai didi

JavaScript 特定函数提升

转载 作者:行者123 更新时间:2023-11-28 16:56:40 25 4
gpt4 key购买 nike

我想具体知道什么功能在提升时首先出现。它们是否与开始时一样:

var z;
function b(){}
function a(){}

会变成

function b(){}
function a(){}
var z;

或者它还有其他作用吗?这对调用其他函数的函数有何影响?是否

var z;
function b(){a();}
function a(){}

知道成为

function a(){}
function b(){a();}
var z;

或者我错过了什么?

最佳答案

MDN 中所述:

One of the advantages of JavaScript putting function declarations into memory before it executes any code segment is that it allows you to use a function before you declare it in your code.

所以..是的 - 您的函数在任何实际函数调用之前加载到内存中。例如:

function b() { console.log('b'); a() }
b()
function a() { console.log('a')}

将正确调用函数 a,尽管 b 函数调用(第 #2 行)位于函数 声明之前一个

作为旁注..请尽量避免变量中的这种行为,因为您最终可能会将变量附加到全局范围或出现“范围冒泡”的风险(使用此 link 了解更多详细信息)

关于JavaScript 特定函数提升,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58956215/

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