文档章节

好程序员web前端教程分享JS基础知识

好程序员官网
 好程序员官网
发布于 10/23 16:45
字数 798
阅读 21
收藏 0

  好程序员web前端教程分享JS基础知识,为大家分享一篇关于JS的基础知识。

 

  1、执行环境:有时也叫环境,是JavaScript中最为重要的一个概念,执行环境定义了变量或函数有权访问的其他数据。

 

  2、变量对象:每一个执行环境都有一个与之关联的变量对象,环境中定义的所有的变量和函数都保存在这个的对象中。

 

  3、作用域链:代码在环境中执行时,会创建变量对象的作用域链,保证对执行环境有权访问的所有变量和函数的有序访问。作用域链的前端,始终是当前执行代码所在环境的变量对象。

 

  4、活动对象:如果当前执行环境是函数,则将活动对象作为变量对象。

 

  5、可执行代码:

 

  1)全局代码:例如加载外部的JS文件或者本地标签内的代码,全局代码不包括function体内的代码;

 

  2)函数代码:function体内的代码;

 

3) eval代码:eval()函数计算某个字符串,并执行其中的JS代码,比如

eval("alert('helloworld')")。

 

 

  6、执行上下文栈:在一个JS程序中,必定会产生多个执行上下文,JS引擎会以栈的方式来处理它们,也就是执行上下文栈。

 

  7、作用域:JS是一种没有块级作用域的语言(包括if、for等语句的花括号代码块或者单独的花括号代码块都不能形成一个局部作用域),所以js的局部作用域的形成有且只有函数的花括号内定义的代码块形成的,既函数作用域。

 

  8、作用域链:是作用域规则的实现,通过作用域链的实现,变量在它的作用域内可被访问,函数在它的作用域内可被调用。

 

  作用域链是一个只能单向访问的链表,这个链表上的每个节点就是执行上下文的变量对象,单向链表的头部(可被第一个访问的节点)始终都是当前正在被调用执行的函数的变量对象(活动对象),尾部始终是全局活动对象。

 

  9、闭包:函数对象可以通过作用域链相互关联起来,函数体内的数据(变量和函数声明)都可以保存在函数作用域内,这种特性在计算机科学文献中被称为“闭包”。

 

从技术角度来说,JS的函数都是闭包:函数都是对象,都关联到作用域链,函数内数据都被保存在函数作用域内。

 

© 著作权归作者所有

好程序员官网
粉丝 0
博文 123
码字总数 133536
作品 0
东城
私信 提问
黑马程序员:前端学习路线图

前端很火,想自学前端的人也多。作为过来人,知道自学的辛苦。特来给大家分享这份学习路线图,让想自学前端的小伙伴们有一份系统专业的学习资源和学习指导。若是觉得有用记得给点个赞哦!无论...

传智播客
2017/03/08
1K
2
javascript学习思维导图

JavaScript 数据类型 JavaScript 变量 Javascript 运算符 JavaScript 流程控制 JavaScript 数组 JavaScript 函数基础 JavaScript 字符串函数 JavaScript 正则表达式 DOM 基本操作 Window 对象...

IT智云编程
2018/09/12
0
0
1024 献礼,10 个前端开发者必收的高赞资源

不知不觉《IT 程序狮》的微博已经运营 3 年多了,我在微博上陆续的发布了 5200+ 技术分享、开源项目、编程灵感以及一些工具推荐的博文,不少内容得到了大V的推荐,也有幸收获了一批热情的关注...

IT程序狮
10/24
0
0
优博精选|2018互联网优秀博客推荐(持续更新)

前端开发 jQuery之家:jQuery之家致力于搜集和整理各种jQuery插件,jQuery特效,jquery ui,jQuery 教程,JS特效,网页特效,以及各种html5,css3动画和效果,为前端开发者提供最全面的网页开...

奋斗的小矿工
2018/08/22
0
0
嘿!店家!你需要一个JS菜谱!(案例:二级伸缩菜单)

今天为大家分享了一个小案例,二级伸缩菜单(原生JS)原理制作的吃货菜谱,顺便给大家安利一波好吃的菜。这个案例还是挺适合刚刚入门js的新手的,平常找不到案例练习的萌新们,可以拿去练练手...

智能机器人蓝梓轩
2018/07/10
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Vue.js学习笔记2 - better-scroll滚动条

better-scroll滚动条 使用作者自制的better-scroll库,实现内容的滚动。 先在package.json加上依赖: "better-scroll": "^0.1.7" 接着再npm install安装依赖。 import BScroll from 'better-......

swanf
52分钟前
7
0
设计模式之适配器模式

定义 将一个类的接口变换成客户端所期待的另一种接口,从而使原本因接口不匹配而无法在一起工作的两个类能够在一起工 作。 UML类图 适配器分为两种,类适配器与对象适配器。 类适配器的UML图...

陈年之后是青葱
今天
8
0
教你玩转Linux—磁盘管理

导读 Linux磁盘管理好坏直接关系到整个系统的性能问题,Linux磁盘管理常用三个命令为df、du和fdisk。 df df命令参数功能:检查文件系统的磁盘空间占用情况。可以利用该命令来获取硬盘被占用了...

问题终结者
今天
11
0
KMP

字符串匹配算法 针对被匹配字段生产一个部分匹配表 A B C D A B D 0 0 0 0 1 2 0 部分匹配表 熟悉前缀与后缀的概念 ,“部分匹配表” 的生产就是根据前缀、后缀的最苍的共有元素的长度 前缀:...

鬼才王
昨天
6
0
快速搭建Jenkins集群

关于Jenkins集群 在Jenkins上同时执行多个任务时,单机性能可能达到瓶颈,使用Jenkins集群可以有效的解决此问题,让多台机器同时处理这些任务可以将压力分散,对单机版Jenkins的单点故障的隐...

程序员欣宸
昨天
13
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部