在函數里用let声明会报错的问题

在函數里用let声明会报错的问题

​在函數里用let声明会报错,那es6是怎么解决这种需求的呢,请老师指点

 function func(n) {
var a=1
}


正在回答

登陆购买课程后可参与讨论,去登陆

2回答

同学你好,对于你的问题解答如下:

1、function func(a) {let a = 1}; func();这种设计也是为了让大家养成良好的编程习惯,不可以重复声明变量,否则就报错,以后写代码过程中注意下。

2、可以这样理解,形参a相当于在函数作用域中使用var声明一个变量a。

祝学习愉快~

好帮手慕慕子 2021-03-24 17:25:39

同学你好,是指在函数中使用let声明变量,然后在变量声明前访问变量会出现报错这种情况吗?如下图所示:

http://img1.sycdn.imooc.com//climg/605b048609dc4c9104220241.jpg

如果是这样的话,那么ES6中这样的设计是为了让大家养成良好的编程习惯,变量一定要在声明之后使用,否则就报错,以后写代码过程中注意下,不要在变量前使用就可以了。

如果不是指这里的话,可以图文结合详细描述下具体指的是哪里,便于帮助同学准确的定位与解决问题。

祝学习愉快~

  • 提问者 席萌萌 #1
    function func(a) {
    let a=1
    }
    func()

    这样会报错,那岂不是很不方便。还有就是,a这个形参在这里算是var声明的吗

    2021-03-24 20:39:01
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师