美文网首页
函数作用域和块作用域

函数作用域和块作用域

作者: 路上的九尾猫 | 来源:发表于2019-06-23 19:42 被阅读0次

函数是js里的一级公民。

创建一个函数之后,这个函数就拥有了一个函数作用域。正常来写,可以是,写了一个函数名,然后再写相关的代码。也可以反过来思考,截取了一部分的代码块,把它们放在一个函数里。这样就隐藏了实现的细节,还可以实现变量和方法的私有化。这个是最小特权的设计思想。函数分为匿名函数和具名函数。为了避免全局污染,或产生多余的函数名,可以使用立即执行函数,英文简称IIFE。

在ES6之前,JS里面是没有块作用域的,参考其他语言,块作用域定义变量的地方,JavaScript都默认定义成了全局变量,所以很明显,这会导致很多隐藏的问题。不过在ES6中,添加了let和const变量声明。const和let都可以用来声明块级变量,不同的是,const声明的静态变量或者指针地址是不可变的。

相关文章

  • JavaScript 作用域和闭包理解

    作用域: 分为函数作用域,和块级作用域; 函数作用域 函数作用域外面的无法访问函数作用域内部的变量和函数,这样就可...

  • 作用域

    标识符的作用域有函数原型作用域、局部作用域(块作用域)、类作用域和 命名空间(namespace) 作用域 函数原...

  • 一网打尽 JavaScript 的作用域

    JavaScript 的作用域包括:模块作用域,函数作用域,块作用域,词法作用域和全局作用域。 全局作用域 在任何...

  • JavaScript作用域分类

    JavaScript作用域分类全局作用域局部作用域函数作用域块级作用域catchwithlet 和 const 什...

  • JS的作用域

    JS的作用域: 全局作用域、函数作用域、eval 作用域、块级作用域 全局作用域: 函数作用域: 结果截屏: 说...

  • es6基础知识2

    1. 块作用域 作用域指的是变量的作用范围,js本身具有了全局作用域和函数作用域,es6中新增了块作用域。块作用域...

  • 作用域

    词法作用域,动态作用域,全局作用域,局部作用域,函数作用域,块级作用域,有些地方还能看到隐式作用域和显示作用域。 ...

  • ES6学习-块级作用域、let和const

    一、作用域  在以前的ES5中,作用域只有全局作用域和函数作用域,没有块级作用域。 在函数作用域或全局作用域中通过...

  • 1. let , const 块级作用域

    作用域全局作用域 => global函数作用域 => 因函数执行而产生的作用域 块级作用域形式 : { }特点 :...

  • ECMAScript6--2.基本语法let 和 const

    1.let 和 const 2.作用域的概念* 全局作用域* 函数作用域* 块作用域--let和const是在块作...

网友评论

      本文标题:函数作用域和块作用域

      本文链接:https://www.haomeiwen.com/subject/ddywqctx.html