![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
作用域
Q_ss
这个作者很懒,什么都没留下…
展开
-
堆栈内存及闭包
堆栈内存及闭包JS中的堆栈JS中的堆栈let a = 0;let b = a;b++;aleart(a) // "0"let o = {};o.a = 0;let b = o;b.a = 10;aleart(o.a) // "10"aleart()输出的结果都是字符串,toString()JS中的数据类型:基本类型(值类型):number string boolean null undefined引用类型:object function特殊类型:symbol栈内原创 2020-06-03 21:17:01 · 334 阅读 · 0 评论 -
函数作用域 & 块作用域
函数作用域函数作用域:属于这个函数的全部变量都可以在整个函数的范围内使用和复用(事实上在嵌套的作用域中也可以使用),在函数外部无法访问到。隐藏内部实现:可以把变量和函数包裹在一个函数的作用域中,然后用这个作用域来隐藏它们。为什么“隐藏”变量和函数是一个有用的技术?–》“最小授权/最小暴露原则”,指在软件设计中,应该最小限度的暴露必要内容,而将其他内容都隐藏起来。规避冲突:可以避免同名...原创 2020-03-29 19:15:17 · 269 阅读 · 0 评论 -
词法作用域 & 欺骗语法
词法作用域词法作用域是定义在词法阶段的作用域,是在写代码时将变量和块作用域写在哪里来决定的。无论函数在哪里/如何被调用,它的词法作用域都只由函数被声明时所处的位置来决定欺骗词法欺骗词法作用域会导致性能下降1. eval:eval(…)可以接受一个字符串为参数,并将其中的内容视为好像在书写时就存在于程序中这个位置的代码。换句话说,可以在你写的代码中用程序生成代码并运行,就好像代码是...原创 2020-03-22 20:46:47 · 138 阅读 · 0 评论 -
作用域 & LHS、RHS查询
1. 作用域作用域是一套规则,用于确定在何处以及如何查找变量(标识符)。如果查找的目的是对变量进行赋值,就会使用LHS查询,如果目的是获取变量的值,就会使用RHS查询。2. LHS、RHS查询当变量出现在赋值操作的左侧时进行LHS查询,出现在右侧时进行RHS查询。RHS:查找某个变量的值(谁是赋值操作的源头),LHS:查询变量的容器本身(谁是赋值操作的目标)。下面这个例子总共有3...原创 2020-03-19 19:46:54 · 216 阅读 · 0 评论