代码有生命吗?答案是有。它也像我们一样,拥有自己的生命。变量有局部变量和全局变量,它们的生命长短不一样。不过它的生命都是从它被声明的时候开始的,不同的是局部变量
会在函数运行以后被删除,也就是死亡,而全局变量只有在页面关闭才会结束。它的生命周期明白了的话,我们就讲下变量的作用域,如下

for (var i = 0; i < 10; i++) {var oneVal = i;}console.log(oneVal);

我们在学C#的时候是不是不能在循环体里面声明变量,但是,在js里是可以的。
如图一样输出了结果

注意:在循环体里面声明的变量是全局变量,网页里的脚本和函数都可以访问到全局变量,不注意声明了重复的变量的话,很容易相互干扰。如下这样是不行的

for (var i = 0; i < 10; i++) {var oneVal = i;}for (var k = 0; k < 10; k++) {var oneVal = i;}console.log(oneVal);

你以为是输出的是9,但是结果是10,所以我们要注意细节,别粗心大意得不偿失了。
在函数内部声明的变量是局部变量,所以只能在函数内部访问它,在函数外面就不行了。
如图

function varName1(oneVar) {var twoVar = oneVar;console.log(oneVar);}varName1(2333);console.log(twoVar);

这样的话只有里面的变量输出了结果,而外面的显示了错误,所以要记住了函数内部声明的变量,外面是用不了的。不同的函数可以声明相同的局部变量,因为只有声明过该变量的函数才 能识别出该变量,当要函数运行完毕,局部变量就会被删除。
还有一点值得注意不要向未声明的变量分配值,如果你把值赋给尚未声明的变量,该变量将被自动作为window对象的一个属性,就有可能会覆盖它原来的属性。
如图

function varName1(oneVar) {var twoVar = oneVar;var alert=oneVar;alert("123");}varName1(2333);

看吧,它就会说alert不是一个方法,所以我们尽量不要这样做。
好了,以上内容来自老师上课的讲解和我个人的理解,希望能对你有帮助。

JavaScript 变量的作用域和生命周期相关推荐

  1. C语言初阶-C语言中的数据类型以及变量的作用域和生命周期,常量的类型

    看之前记得先点赞收藏呦!谢谢大家的支持! 目录 一.c语言中的数据类型 注意:这里的long型的定义是>=int所占字节数,所以占4个是没有问题的 二.变量和常量 1.变量的类型 2.变量的作用 ...

  2. C语言中变量的作用域和生命周期

    一.作用域和生命周期: 1.作用域: 通常来说,一段程序代码中所用到的名字并不总是有效 / 可用 的.而限定这个名字的可用性的代码范围就是这个名字的作用域.俗话说的好,"能力越大,责任也就越 ...

  3. c语言变量作用域生命周期,C/C++——C++变量的作用域与生命周期,C语言中变量的作用域和生命周期...

    谭浩强书: 从存储模型可以看到,谭浩强和钱能的模型有一定的对应关系: 静态存储区  ->  全局数据区 动态存储区  ->  栈(stack) 变量的类型: 1. 局部变量和全局变量 局部 ...

  4. python变量的作用域及生命周期_Python——变量的作用域

    原创声明:本文系博主原创文章,转载及引用请注明出处. 1. 在编程语言中,变量都有一定的作用域,用来限定其生命周期,且不同类型的变量作用域不同. 在Python中解释器引用变量的顺序(优先级)为:当前 ...

  5. 变量的作用域和生命周期

    目录 作用域 局部变量的作用域 局部变量的生命周期 生命周期 全局变量的作用域 全局变量的生命周期 作用域 作用域是程序设计概念,一段程序代码中所用到的名字并不总是有效/可用的,而限定这个名字的可用性 ...

  6. C语言基础1:初识C语言(转义、注释;数组、操作符、反码、补码、static、define、指针、结构体常变量;局部变量;作用域、生命周期)

    文章目录 C语言基础1:初识C语言 1.C语言简介 1.1什么是C语言 1.2C语言的发展 2.第一个C语言程序 2.1创建项目 2.2添加源文件 2.3写代码 3.数据类型 4.变量.常量 4.1定 ...

  7. C++ 作用域与生命周期

    Pascal 之父 Nicklaus Wirth 曾经提出一个公式展示出了程序的本质:程序=算法+数据结构.后人又给出一个公式与之遥相呼应:软件=程序+文档.这两个公式可以简洁明了地为我们展示程序和软 ...

  8. C语言数据类型、变量、常量、作用域和生命周期的概念解释和案例

    目录 一.数据类型 二.变量 变量的命名: 变量的分类: 变量的使用: 三.常量 常量的定义和分类 四.变量作用域和生命周期 作用域: 生命周期: 一.数据类型 当我们去超市购物的时候,看到商品的标价 ...

  9. PHP (20140510)深入浅出 JavaScript 变量、作用域和内存 v 0.5

    深入浅出 JavaScript 变量.作用域和内存 v 0.5 本文主要从原理入手分享变量和作用域的相关知识,最后结合本文所分享知识,再次深入了解下闭包的运行原理. 主要参考<JS高级程序设计& ...

最新文章

  1. elasticsearch v6.5.4配置
  2. COOKIE和SESSION关系和区别
  3. 设置virgo-tomcat-server的JVM内存
  4. 京东JDHBase异地多活实践
  5. python一看就很厉害的代码_Python学习教程:怎么写出让人看起来就很舒服的代码?...
  6. BackTrack 3下使用spoonwep2破解WEP加密的无线路由器
  7. android来电录音软件,通话录音软件来电录音
  8. 查看已连接的WiFi密码
  9. python timer详解_Python timer定时器两种常用方法解析
  10. 【数分】7. AB实验篇
  11. word题注的大写变成小写
  12. 使用joda_time计算两时间的月数差,天数差
  13. signature=3beca855c07ddd1a2414928f7d848f80,Rory Edelman doing signature with style.
  14. python使用GDAL/OGR/OSR时设置GDAL_DATA环境变量
  15. 为李想打call,谋局汽车,美团王兴的外卖终极战竟在这里
  16. ICCV 2019 | 中国研究者无缘最佳论文奖项,接收论文数量超美国,商汤57篇论文入选...
  17. linux 中query exp日期相关,Oracle exp query条件检索在Windows和Linux下的命令区别
  18. 《“我是他妈的大专生”》
  19. 波士顿科学宣布收购Baylis医疗;启明医疗协议收购诺诚医疗;百济神州宣布百悦泽获批用于治疗套细胞淋巴瘤 | 医药健闻...
  20. 【01】 冯·诺依曼体系结构:计算机组成的金字塔

热门文章

  1. CF1342E. Placing Rooks
  2. 牛客网 【每日一题】6月11日题目精讲 背包
  3. [学习笔记] 二次剩余
  4. YbtOJ#532-往事之树【广义SAM,线段树合并】
  5. jzoj3518-进化序列(evolve)【位运算】
  6. P2580-于是他错误的点名开始了【Trie,字符串】
  7. codeforces1485 F. Copy or Prefix Sum(dp)
  8. 2019年这50个Kafka面试题,你知道答案么
  9. 来之不易的美团面试,结果居然挂了...(附面试答案)
  10. Java读取properties配置文件时,中文乱码解决方法