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 相关文章推荐
利用JS重写Cognos右键菜单的实现代码
Apr 11 Javascript
网页整体变灰白色(兼容各浏览器)实例
Apr 21 Javascript
jQuery实现页面顶部显示的进度条效果完整实例
Dec 09 Javascript
JavaScript学习笔记之创建对象
Mar 25 Javascript
详解Backbone.js框架中的模型Model与其集合collection
May 05 Javascript
通过Ajax使用FormData对象无刷新上传文件方法
Dec 08 Javascript
JavaScript数据结构学习之数组、栈与队列
May 02 Javascript
Vue实现选择城市功能
May 27 Javascript
JS中将多个逗号替换为一个逗号的实现代码
Jun 23 Javascript
详解利用jsx写vue组件的方法示例
Jul 17 Javascript
layui框架中layer父子页面交互的方法分析
Nov 15 Javascript
vue-cli脚手架build目录下utils.js工具配置文件详解
Sep 14 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 _autoload自动加载类与机制分析
2012/02/10 PHP
PHP版微信第三方实现一键登录及获取用户信息的方法
2016/10/14 PHP
php基于单例模式封装mysql类完整实例
2016/10/18 PHP
php 截取GBK文档某个位置开始的n个字符方法
2017/03/08 PHP
Laravel中批量赋值Mass-Assignment的真正含义详解
2017/09/29 PHP
php和nginx交互实例讲解
2019/09/24 PHP
JQuery jsonp 使用示例代码
2009/08/12 Javascript
JavaScript Event学习第四章 传统的事件注册模型
2010/02/07 Javascript
在次封装easyui-Dialog插件实现代码
2010/11/14 Javascript
实例解析JS布尔对象的toString()方法和valueOf()方法
2015/10/25 Javascript
JS实现网页上随机产生超链接地址的方法
2015/11/09 Javascript
js实现四舍五入完全保留两位小数的方法
2016/08/02 Javascript
jquery实现图片切换代码
2016/10/13 Javascript
简单理解vue中Props属性
2016/10/27 Javascript
Angular2使用Augury来调试Angular2程序
2017/05/21 Javascript
详解Vue爬坑之vuex初识
2017/06/14 Javascript
Vue中computed与methods的区别详解
2018/03/24 Javascript
vue里input根据value改变背景色的实例
2018/09/29 Javascript
bootstrap-table+treegrid实现树形表格
2019/07/26 Javascript
vue路由缓存的几种实现方式小结
2020/02/02 Javascript
[30:55]完美世界DOTA2联赛PWL S2 Magma vs LBZS 第二场 11.18
2020/11/18 DOTA
django 2.0更新的10条注意事项总结
2018/01/05 Python
PyQt5下拉式复选框QComboCheckBox的实例
2019/06/25 Python
python2 对excel表格操作完整示例
2020/02/23 Python
Python 跨.py文件调用自定义函数说明
2020/06/01 Python
如何使用scrapy中的ItemLoader提取数据
2020/09/30 Python
Css3实现无缝滚动防抖
2020/09/14 HTML / CSS
速比涛英国官网:Speedo英国
2019/07/15 全球购物
大学军训通讯稿
2014/01/13 职场文书
有关打架的检讨书
2014/01/25 职场文书
中班中秋节活动反思
2014/02/18 职场文书
超市促销活动总结
2014/07/01 职场文书
入党积极分子学习党的纲领思想汇报
2014/09/13 职场文书
运动会班级前导词
2015/07/20 职场文书
车间班组长竞聘书
2015/09/15 职场文书
CSS中em的正确打开方式详解
2021/04/08 HTML / CSS