JS作用域链详解


Posted in Javascript onJune 26, 2017

本文实例为大家分享了JS作用域链的相关内容,供大家参考,具体内容如下

1、所有全局变量和函数都是作为window对象的属性和方法创建的。

2、在某个方法函数的作用域中,所有代码执行完之后,该作用域被销毁,保存在其中的所有变量和函数定义也会随着被”销毁“,这就是局部作用域。但闭包不会销毁局部变量。

这里的销毁:是指下次再执行此函数的时候,所有的变量又回到最初的状态

var color = "blue";
function changeColor(){
var anothercolor = "red";
  if(color==="blue"){
    color = anothercolor;
  }
        //这里可以访问anothercolor,color
         
}
    //这里只可以访问color
changeColor();
console.log(color);//red
console.log(anothercolor);

// undefined。anothercolor是函数changeColor的局部变量,在整个函数运行之后已经被“销毁”

3、变量的声明注意点

function ddq(){

 alert(i)
var i=11
 alert(i)
 
}
ddq()
// 第一个返回underfind
//第二个返回11

这段代码相当于

function ddq(){
 var i
 alert(i)
 i=11
 alert(i)
 
}
ddq()

注意点:在一个函数内部的声明变量时(在调用之后),就相当于先申明,调用后赋值。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JQuery AJAX实现目录浏览与编辑的代码
Oct 21 Javascript
js cookies 常见网页木马挂马代码 24小时只加载一次
Apr 13 Javascript
jquery调用asp.net 页面后台的实现代码
Apr 27 Javascript
jQuery图片预加载 等比缩放实现代码
Oct 04 Javascript
node.js chat程序如何实现Ajax long-polling长链接刷新模式
Mar 13 Javascript
js实现上一页下一页的效果【附代码】
Mar 10 Javascript
如何使用jquery修改css中带有!important的样式属性
Apr 28 Javascript
Html5+jQuery+CSS制作相册小记录
Dec 30 Javascript
js中时间格式化的几种方法
Jul 22 Javascript
JQuery模拟实现网页中自定义鼠标右键菜单功能
Nov 14 jQuery
原生js+canvas实现下雪效果
Aug 02 Javascript
JavaScript中变量提升和函数提升的详解
Aug 07 Javascript
jQuery.Form实现Ajax上传文件同时设置headers的方法
Jun 26 #jQuery
纯JS实现简单的日历
Jun 26 #Javascript
vue2.0全局组件之pdf详解
Jun 26 #Javascript
JavaScript创建对象的七种方式(推荐)
Jun 26 #Javascript
基于 webpack2 实现的多入口项目脚手架详解
Jun 26 #Javascript
JavaScript的六种继承方式(推荐)
Jun 26 #Javascript
JavaScript数据类型和变量_动力节点Java学院整理
Jun 26 #Javascript
You might like
PHP默认安装产生系统漏洞
2006/10/09 PHP
php+ajax实时输入自动搜索匹配的方法
2014/12/26 PHP
thinkphp隐藏index.php/home并允许访问其他模块的实现方法
2016/10/13 PHP
php实现基于pdo的事务处理方法示例
2017/07/21 PHP
php微信开发之关注事件
2018/06/14 PHP
PHP设计模式之策略模式原理与用法实例分析
2019/04/04 PHP
经验几则 推荐
2006/09/05 Javascript
一个很酷的拖动层的js类,兼容IE及Firefox
2009/06/23 Javascript
根据鼠标的位置动态的控制层的位置
2009/11/24 Javascript
深入理解JavaScript系列(13) This? Yes,this!
2012/01/18 Javascript
jquery控制display属性为none或block
2014/03/31 Javascript
js自定义鼠标右键的实现原理及源码
2014/06/23 Javascript
JS基于VML技术实现的五角星礼花效果代码
2015/10/26 Javascript
javascript事件处理模型实例说明
2016/05/31 Javascript
EasyUI 中combotree 默认不能选择父节点的实现方法
2016/11/07 Javascript
Ajax的概述与实现过程
2016/11/18 Javascript
Bootstrap CSS布局之表单
2016/12/17 Javascript
jQuery实现通过方向键控制div块上下左右移动的方法【测试可用】
2018/04/26 jQuery
vue实现添加与删除图书功能
2018/10/07 Javascript
Vue通过for循环随机生成不同的颜色或随机数的实例
2019/11/09 Javascript
extjs图表绘制之条形图实现方法分析
2020/03/06 Javascript
如何实现小程序与小程序之间的跳转
2020/11/04 Javascript
python爬取淘宝商品销量信息
2018/11/16 Python
python 实现return返回多个值
2019/11/19 Python
Django重设Admin密码过程解析
2020/02/10 Python
Mio Skincare英国官网:身体紧致及孕期身体护理
2018/08/19 全球购物
Stührling手表官方网站:男女高品质时尚手表的领先零售商
2021/01/07 全球购物
介绍一下HTTP、HTTPS和SSL
2012/12/16 面试题
物资采购方案
2014/06/12 职场文书
环境工程专业毕业生求职信
2014/09/30 职场文书
2015年体育部工作总结
2015/04/02 职场文书
病假证明模板
2015/06/19 职场文书
大学优秀学生主要事迹材料
2015/11/04 职场文书
安全生产标语口号
2015/12/26 职场文书
交通安全教育心得体会
2016/01/15 职场文书
mysql外连接与内连接查询的不同之处
2021/06/03 MySQL