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让控件左右移动的三种实现方法
Sep 08 Javascript
js文本框输入点回车触发确定兼容IE、FF等
Nov 19 Javascript
js 走马灯简单实例
Nov 21 Javascript
详解JavaScript语言的基本语法要求
Nov 20 Javascript
jQuery Ajax请求后台数据并在前台接收
Dec 10 Javascript
JS 在数组指定位置插入/删除数据的方法
Jan 12 Javascript
ES6新特性之变量和字符串用法示例
Apr 01 Javascript
JavaScript跳出循环的三种方法(break, return, continue)
Jul 30 Javascript
react中Suspense的使用详解
Sep 01 Javascript
微信小程序图片自适应实现解析
Jan 21 Javascript
JavaScript布尔运算符原理使用解析
May 06 Javascript
原生js滑动轮播封装
Jul 31 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 读取文本文件内容并分页显示
2016/01/02 PHP
PHP基于IMAP收取邮件的方法示例
2017/08/07 PHP
JavaScript执行效率与性能提升方案
2012/12/21 Javascript
jQuery点击弹出下拉菜单的小例子
2013/08/01 Javascript
Jquery中$.get(),$.post(),$.ajax(),$.getJSON()的用法总结
2013/11/14 Javascript
jquery自动将form表单封装成json的具体实现
2014/03/17 Javascript
鼠标左键单击冲突的问题解决方法(防止冒泡)
2014/05/14 Javascript
JavaScript中获取样式的原生方法小结
2014/10/08 Javascript
JavaScript如何自定义trim方法
2015/07/28 Javascript
js实现的全国省市二级联动下拉选择菜单完整实例
2015/08/17 Javascript
javascript实现简单计算器效果【推荐】
2016/04/19 Javascript
几种tab切换详解
2017/02/03 Javascript
对比分析Django的Q查询及AngularJS的Datatables分页插件
2017/02/07 Javascript
js实现彩色条纹滚动条效果
2017/03/15 Javascript
JS去掉字符串前后空格或去掉所有空格的用法
2017/03/25 Javascript
Angular4 中内置指令的基本用法
2017/07/31 Javascript
jQuery结合jQuery.cookie.js插件实现换肤功能示例
2017/10/14 jQuery
vue实现百度搜索功能
2020/12/28 Javascript
Element InputNumber计数器的使用方法
2020/07/27 Javascript
[02:51]DOTA2 Supermajor小组分组对阵抽签仪式
2018/06/01 DOTA
Python ORM框架SQLAlchemy学习笔记之数据查询实例
2014/06/10 Python
pytorch 改变tensor尺寸的实现
2020/01/03 Python
Python scrapy爬取小说代码案例详解
2020/07/09 Python
Python Unittest原理及基本使用方法
2020/11/06 Python
python遍历路径破解表单的示例
2020/11/21 Python
Python3+Appium安装及Appium模拟微信登录方法详解
2021/02/16 Python
HTML5实现视频直播功能思路详解
2017/11/16 HTML / CSS
html5实现完美兼容各大浏览器的播放器
2014/12/26 HTML / CSS
移动端HTML5实现文件上传功能【附代码】
2016/03/25 HTML / CSS
移动端Html5页面生成图片解决方案
2018/08/07 HTML / CSS
复古风格的女装和装饰品:ModCloth
2017/12/29 全球购物
卫校中专生的自我评价
2014/01/15 职场文书
反腐倡廉标语
2014/06/24 职场文书
2014年组织部工作总结
2014/11/14 职场文书
会议通知格式范文
2015/04/15 职场文书
python实现简单的聊天小程序
2021/07/07 Python