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 相关文章推荐
JavaScript中“+=”的应用
Feb 02 Javascript
jQuery移动和复制dom节点实用DOM操作案例
Dec 17 Javascript
JS使用ajax方法获取指定url的head信息中指定字段值的方法
Mar 24 Javascript
canvas压缩图片转换成base64格式输出文件流
Mar 09 Javascript
浅析Angular2子模块以及异步加载
Apr 24 Javascript
使用JavaScript实现表格编辑器(实例讲解)
Aug 02 Javascript
React Native 集成jpush-react-native的示例代码
Aug 16 Javascript
微信小程序实现的贪吃蛇游戏【附源码下载】
Jan 03 Javascript
浅析Angular19 自定义表单控件
Jan 31 Javascript
老生常谈JS中的继承及实现代码
Jul 06 Javascript
jQuery对底部导航进行跳转并高亮显示的实例代码
Apr 23 jQuery
js 将多个对象合并成一个对象 assign方法的实现
Sep 24 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使之能同时支持GIF和JPEG
2006/10/09 PHP
初学CAKEPHP 基础教程
2009/11/02 PHP
php去掉文件前几行的方法
2015/07/29 PHP
php的闭包(Closure)匿名函数初探
2016/02/14 PHP
PHP使用imagick扩展实现合并图像的方法
2017/04/25 PHP
自己动手实现jQuery Callbacks完整功能代码详解
2013/11/25 Javascript
使用firebug进行调试javascript的示例
2013/12/16 Javascript
使用javascript实现雪花飘落的效果
2015/01/13 Javascript
JavaScript中诡异的delete操作符
2015/03/12 Javascript
jQuery插件编写步骤详解
2016/06/03 Javascript
玩转JavaScript OOP - 类的实现详解
2016/06/08 Javascript
ES6新特性五:Set与Map的数据结构实例分析
2017/04/21 Javascript
js实现图片上传并预览功能
2018/08/06 Javascript
vue 指令和过滤器的基本使用(品牌管理案例)
2019/11/04 Javascript
基于Vue CSR的微前端实现方案实践
2020/05/27 Javascript
python测试mysql写入性能完整实例
2018/01/18 Python
python链接oracle数据库以及数据库的增删改查实例
2018/01/30 Python
Python获取指定字符前面的所有字符方法
2018/05/02 Python
Python之虚拟环境virtualenv,pipreqs生成项目依赖第三方包的方法
2019/07/23 Python
对Django 转发和重定向的实例详解
2019/08/06 Python
python-web根据元素属性进行定位的方法
2019/12/13 Python
python装饰器三种装饰模式的简单分析
2020/09/04 Python
诺心蛋糕官网:LE CAKE
2018/08/25 全球购物
这76道Java面试题及答案,祝你能成功通过面试
2016/04/16 面试题
Servlet方面面试题
2016/09/28 面试题
清洁工表扬信
2014/01/08 职场文书
模具毕业生推荐信
2014/02/15 职场文书
优秀团队获奖感言
2014/02/19 职场文书
大学生应聘导游自荐信
2014/06/02 职场文书
2014年党总支工作总结
2014/12/18 职场文书
青年教师个人总结
2015/02/11 职场文书
优秀教师主要事迹材料
2015/11/04 职场文书
2016年秋季运动会广播稿
2015/12/21 职场文书
导游词之云南-元阳梯田
2019/10/08 职场文书
golang中实现给gif、png、jpeg图片添加文字水印
2021/04/26 Golang
Python jiaba库的使用详解
2021/11/23 Python