麻烦老师解释一下课程中讲的那个for(var i;..;..)的例子

来源:4-1 全局作用域和局部作用域

NullSet

2019-07-17 12:29:03

那个地方的变量是什么?它的生命周期是什么?对于它我应该如何理解?

写回答

2回答

好帮手慕夭夭

2019-07-18

你好同学,解答如下:

1.变量是什么类型,看它赋值即可。这里是给它初始化为0,所以i是数值类型。

2.不能说它在没有在这个块里,因为在js中是没有块级作用域的,即for不会形成块级作用域,所以这里的i是全局变量。因为在es6中才会有块级作用域的概念,所以课程中老师做了假设对比了一下。因为后面阶段才会讲到es6,所以老师简单的为你讲解,等同学学习了后面的知识,再过来回顾就好理解了哦。

假设如下是在es6中,for会形成一个块级作用域,那么i只能在for循环中访问,在外部访问不到。

http://img.mukewang.com/climg/5d30133d00015ef703940115.jpg

而目前我们使用到的js (可以说出es5) ,是没有这个块级作用域概念的,只有函数会形成一个局部作用域,所以在函数之外的其他地方声明变量,都是全局变量。

http://img.mukewang.com/climg/5d3013f20001bccb03800112.jpg

祝学习愉快,望采纳。

0
hullSet
h 懂了,谢谢老师!
h019-07-18
共1条回复

好帮手慕夭夭

2019-07-17

你好同学,是说的本节课中如下for循环吗?不知道同学说的那个地方的变量是不是指这里的i,并且这里没有讲到生命周期的概念,生命周期属于vue里面的知识点。所以请同学具体描述一下是视频的那一块内容,以便老师准确高效的为你解答。

http://img.mukewang.com/climg/5d2ecf2b00011ca203910178.jpg

祝学习愉快!

0
hullSet
h 就是这个i,它是什么变量类型呢?我就是有点不理解这个i的存在,它是不是不在这个块内?
h019-07-18
共1条回复

0 学习 · 14456 问题

查看课程