gpt4 book ai didi

javascript - if 语句的作用域

转载 作者:数据小太阳 更新时间:2023-10-29 05:05:14 27 4
gpt4 key购买 nike

很多时候我需要 delcare 一个变量只是为了一个真实的 if 语句。例如:

let entry;
entry = entries.find(....);
if (entry) {
// use entry
}

// i dont need entry here

我尝试了类似于 for (let i=0; ...) 的组合,如下所示:

if (let entry = entries.find(....)) {
// user entry
}

但它不起作用。如果我使用 var 而不是 let 它可以工作,但它提升了变量,因此它不限于 if 语句 block 。

最佳答案

因为 let 创建了一个 block 作用域,你需要在它周围创建另一个 block 来限制它的作用域。

block 语句用于对零个或多个语句进行分组。该 block 由一对花括号分隔。

let x = 1;
{
let x = 2;
}
console.log(x); // logs 1

或者,您可以使用立即调用的函数表达式:

(function () {
let entry = 6;

if (entry) {
console.log(entry);
}
})()
// Variable entry is not accessible from the outside scope

关于javascript - if 语句的作用域,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42348427/

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