摘要:
我们知道,JavaScript语句在编译阶段会将所有函数和变量的声明进行提升,例如: 输出是undefined,因为这个代码片段会被解析成: 变量a的声明会被提升到所在作用域(即全局作用域)的顶部,函数也不例外(注意,函数表达式是不会被提升的,只有函数声明才会被提升): 这个代码片段会被解析成: 那 阅读全文
摘要:
我们知道,ES5只有函数作用域,可以利用函数来隐藏“信息”,把需要暴露的信息“最小化”,成为“最小特权原则”。 但昨天看到其实还有另一种局部变量,从ES3时代就有了,这就是catch(error)中的error变量(即错误变量)只能在catch块中访问,外面访问不到。 但在catch块内部(即花括号 阅读全文