你不知道的JavaScript
文章平均质量分 85
飞鹰3995
这个作者很懒,什么都没留下…
展开
-
块作用中的域
尽管函数作用域是最常见的作用域单元,当然也是现行大多数JavaScript中最普遍的设计方法,但其他类型的作用域单元也是存在的,并且通过使用其他类型的作用域单元甚至可以实现维护起来更加优秀、简介的代码。 除JavaScript外的很多编程语言都支持块作用域,因此其他语言开发者对于相关的思维方式会很熟悉,但是对于主要使用JavaScript的开发者来说,这个概念会很陌生。 尽管你可能连一行带有块作用域风格的代码都没写过,但对下面这种很常见的JavaScrip...原创 2022-03-22 19:10:48 · 1400 阅读 · 0 评论 -
作用域(三)——欺骗词法
在上一篇文章中,小编介绍了词法作用域,并在其中提到了两个会出现“欺骗”词法作用域的关键字——eval和with,今天小编就和大家一起揭开这两个关键字的神秘面纱。在探索今天的内容之前,先把上一篇文章的债还上。 在上一篇文章中,我提到了【通过这种技术可以访问那些被同名变量所遮蔽的全局变量,但非全局变量如果被遮蔽了,无论如何都无法被访问到。】,下面的代码没有写出来。也就是这样: varb=3functionfoo(){ varb=4; functionbar(){ varb=...原创 2022-01-13 21:30:00 · 145 阅读 · 0 评论 -
作用域(二)——词法作用域
在上一篇文章中,我们将“作用域”定义为一套规则,这套规则用来管理引擎如何在当前作用域以及嵌套的子作用域中根据标识符名称进行变量查找。 作用域共有两种主要的工作模型。第一种是最为普通的,被大多数编程语言所采用的词法作用域,我们会对这种作用域进行深入讨论。另外一种叫做动态作用域,仍有一些编程语言在使用(比如Bash脚本、Perl中的一些模式等)。 简单的说,词法作用域就是定义在词法阶段的作用域。换句话说,词法作用域就是由你在写代码时将变量和块作用域写在哪里来决定的,因此当词法处理器处理代码时会保持作用域不变原创 2022-01-10 18:07:34 · 555 阅读 · 0 评论 -
作用域(一)
这段时间小编把两本js的经典图书看完了,一本是《深入理解JavaScript》,一本是《你不知道的JavaScript》。中间有些内容小编是根本没看懂,这次小编决定看第二遍并和大家一起分享书中的内容,期待着和大家一起进步。 一、RHS和LHS 先看一个js中很常用的赋值语句 var a = 2; 在这个例子中,js的引擎会对变量a进行LHS查询,当然了,和这个相对应的是RHS查询。 那究竟什么是LHS和RHS呢,简单一点说,如果是对某个变量进行赋值,就是进行了一次LHS。获取一个变量的值,就进行原创 2021-11-15 21:38:51 · 664 阅读 · 0 评论