ES6中的新规范“块级函数声明”是什么意思?

2023-12-30

我正在查看 es6 兼容性表尝试学习Here https://kangax.github.io/compat-table/es6/#block-level-function-note.

in the bindings部分它说“块级函数声明?”。除了官方之外,我找不到任何博客或文档spec http://www.ecma-international.org/ecma-262/6.0/#sec-functiondeclarationinstantiation关于单词的组合。

问题:“块级函数声明”指的是什么?


示例 kangax 正在测试:

alert(function(){
    'use strict';
    function f() { return 1; }
    {
      function f() { return 2; }
    }
    return f() === 1;
}());

这意味着“提升”功能的行为方式与let (vs var).

在 ES5 中,大括号是“装饰”,除非它们出现在一些关键字之后,例如for, if, try等等,所以,第二个f()会“破坏”第一个,但在 ES6 兼容的运行时中,第二个f()对块来说是私有的,因此不会替换名称f由第一个函数定义。

在 ES6 大括号中 ({ ... }) 表示一个块,即使前面没有关键字。也就是说,我在 ES6 代码中没有看到很多任意的块,可能只是因为缺乏实践、无知,或者可能只是因为缺乏需要;函数作用域在 JS 中运行得很好。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ES6中的新规范“块级函数声明”是什么意思? 的相关文章

  • AngularJS 指令 - 设置多个指令元素的顺序(不是指令的优先级,而是元素的优先级)

    考虑带有指令 foo 的标记 div div div div div div 使 foo 按指定顺序而不是从上到下 3 1 2 运行的好方法是什么 我唯一能想到做的就是跟踪已运行的内容并在不按顺序的项目上返回 false 然后让 Angul
  • Node.js es6 使用index.js 导出/导入

    我有以下文件夹结构 src index js lib test js dist examples example js src lib test js export default class Test src index js impor
  • moment.calendar() 没有时间

    我想使用不带时间的 moment calendar 选项 所以而不是 上周二下午 5 点 我想要 上周二 有人知道 Moment 现在是否有解决方案吗 我找到了这个小提琴http jsfiddle net nawxZ http jsfidd
  • 使用javascript在谷歌地图中绘制多边形

    我想在谷歌地图中绘制多边形 我正在使用示例代码http jsfiddle net rvsMH 1 http jsfiddle net rvsMH 1 但它不起作用并且没有获取数组或纬度 经度值 我不知道出了什么问题
  • 需要禁用引导时间选择器的输入

    我正在使用 Bootstrap 时间选择器 我已经成功实施了 但我需要的是用户只能在 30 分钟间隙内插入 例如 10 00 10 30 11 00 等 为此我尝试过的是minuteStep如下图所示 效果完美 fantasyleague
  • 如何在 jQuery 中使用 CSS“background-image”属性添加的图像上绑定单击事件

    这是我的小提琴link http jsbin com otisur 1 edit 我想我的问题通过标题本身就很清楚了 尽管如此 我正在寻找一种绑定的方法click使用 css 添加的图像上的事件background image财产 我知道
  • 从 JavaScript 将参数传递给 p:remoteCommand

    我想将值传递给remoteCommand来自 JavaScript 如果这是可能的 我该如何做到这一点以及如何在支持 bean 中接收它们 对的 这是可能的 如何执行此操作取决于 PrimeFaces 版本 你可以在PrimeFaces 用
  • Angular - Safari 无法正确显示 DOM

    我是 Angular 的新手 使用 Angular 4 我尝试通过在关联的组件类文件中设置属性来更新特定元素 但是 除非我尝试强制重新绘制网页 通过调整窗口大小等 否则页面不会更新 我打开检查器 看到 DOM 已更改 但显示与元素检查器中的
  • JavaScript 逻辑赋值是如何工作的?

    在 javascript 中 如果我们有一些代码 例如 var a one var b q a alert b 逻辑 OR 运算符会将 a 的值分配给 b 并且警报将为 一 这仅限于作业还是我们可以在任何地方使用它 似乎空字符串被视为与未定
  • Backbone.js 与 Google 地图 - 有关此问题和侦听器的问题

    我有一个为 Google Maps v3 创建的模块 我正在尝试将其转换为 Backbone js 视图构造函数 到目前为止 这是我的视图模块 我将解释代码后遇到的问题 pg views CreateMap Backbone View ex
  • 在js中检测浏览器的最佳方法

    JavaScript 中有很多浏览器检测方法 据我所知 使用navigator userAgent或检测特征 例如XMLHttpRequest 等等 谁能告诉我哪种方法最好 最有效 如果你真的需要知道什么browser他们正在使用 你主要需
  • json、rails、javascript 中的解析错误

    我需要将 ruby 数组放入 javascript 数组中 但出现解析错误 var characters 这就是我将 ruby 嵌入到内联 javascript 中的方式 但它出现了解析错误 我应该如何将此 ruby 数组放入 javasc
  • 未处理的承诺拒绝:Zone.js 检测到 ZoneAwarePromise `(window|global).Promise` 已被覆盖

    我尝试将 Angular2 快速入门代码合并到我当前的 webpack 构建中 似乎有些东西正在覆盖zone js抛出此错误的承诺 根据我见过的大多数 stackoverflow 帖子 zone js文件需要在任何可能包含承诺的文件之后加载
  • 从 html 页面和 javascript 调用 java webservice

    我正在尝试从 javascript 调用 java 实现的 Web 服务 使用 NetBeans IDE 我读过很多关于 jQuery 和 AJAX 的内容 但我似乎无法掌握它 假设我的 Web 服务 WSDL 位于 http localh
  • backbone.js:视图中影响集合中不同模型的按钮

    我刚刚开始使用backbone js 到目前为止 我真的很喜欢它 我有这样的事情 ModelA ModelB ViewA ViewB ModelA 持有 ModelB 的集合 如何使用按钮构建模型 B 的视图 单击该按钮会更改集合中下一个
  • 在部分渲染时执行 JavaScript

    我有一些 JavaScript 代码 我想在用户单击其文件夹之一后执行 它会触发 show 操作和 show js erb 从而呈 现部分内容 Show js erb 当用户单击其文件夹之一时触发 如下所示 body append 它成功注
  • 需要根据用户选择有条件地渲染具有 X 行数的部分

    我有一个反应组件 其中包含一个下拉列表 其中的选项包括none 1 5 and 13 根据用户选择的数字 我需要渲染一个部分 其中包括许多行 每个行都有字段名称和下拉列表 如果用户不选择任何一个 我需要整个附加配置部分消失 新部分中的每个下
  • Skrollr 添加空白

    我已经尝试了一切 我在谷歌上阅读了 4 5 页试图找到适合我的修复程序 已经筋疲力尽了 即使我使用 skrollr 示例 我的问题仍然存在 不是说他们做错了什么 我知道我只是没有正确理解它 因此 我上传了一个演示 仅在移动设备上展示这个尴尬
  • 如何将命名空间与 TypeScript 外部模块一起使用?

    我有一些代码 基本类型 ts export namespace Living Things export class Animal move export class Plant photosynthesize dog ts import
  • 将一维数组转换为二维数组[重复]

    这个问题在这里已经有答案了 我正在开发一个程序 我必须将文本文件中的值读入一维数组 我已经成功获取该一维数组中的数字 m1 1 2 3 4 5 6 7 8 9 但我希望数组是 m1 1 2 3 4 5 6 7 8 9 您可以使用此代码 co

随机推荐

  • 如何在android中设计自定义列表视图?

    网上有很多相关教程 http www softwarepassion com android series custom listview items and adapters http www softwarepassion com an
  • CURL 传递 SSL 证书和密码

    我需要使用 CURL 指定一个证书 我尝试使用 cert 选项 但它不起作用 您能否让我知道在使用curl 调用时指定密钥库和密码 应该 curl cert certificate file pem password https www e
  • 如何使 Ember 数据停止根据其规则将我的端点更改为单数和复数?

    我需要 Ember 在调用 REST 端点时停止尝试猜测 但找不到这样做的方法 如果我有一个端点 services 我希望 ember 总是打电话 services不管我是否打电话给find services or find service
  • 使用 Javascript 在文本区域的光标处插入文本

    我在网上寻找解决方案 有一些 但它们似乎都将代码拆分为支持 IE 和 Firefox 我想知道是否有一种更优雅的方法适用于每个浏览器 在光标处插入一些文本textarea 非常感谢 不 没有 IE 有它的TextRange反对做这项工作 I
  • 使用 Spring mockMvc 测试可选路径变量

    我在 Spring MVC 中有一个带有可选路径变量的方法 我正在尝试在未提供可选路径变量的情况下测试它 来自控制器的片段 要调用的资源 URI RequestMapping value some uri foo bar method Re
  • 在 Python 中处理惰性 JSON - “期望属性名称”

    我希望使用 Pythons 2 7 json 模块来处理各种 JSON 提要 不幸的是 其中一些提要不符合 JSON 标准 具体来说 某些键没有用双语音标记 包装 这导致 Python 出现错误 在编写一段丑陋的代码来解析和修复传入数据之前
  • API 应该是 %100 同步或 %100 异步示例

    当我在学习的时候https nodejs org api process html process process nexttick callback arg https nodejs org api process html proces
  • 实现 Endless RecyclerView

    我想实现一个无尽的 RecyclerView 但到目前为止 我遇到的所有实现和教程都描述了从服务器加载数据 然后加载它或使用循环动态添加元素 就我而言 我已经有一个大的 ArrayList 其中包含我想要在 RecyclerView 中显示
  • SQL Server 索引使用统计信息多久更新一次以及什么触发它?

    还有一些其他类似的问题 但请不要混淆 我知道有一个功能STATS DATE 知道统计数据在哪里更新 这很好 但我想知道是什么触发了该统计数据的更新或截止 我知道也有这样的报告 但上周我看到了某些服务器中的统计数据 它们为我提供了非常好的信息
  • Django:多对多关系的反向列表?

    我在 models py 中有两个简单的模型 Service 和 Host Host services 与 Service 具有 m2m 关系 换句话说 一台主机有多个服务 一个服务可以驻留在多个主机上 基本的 m2m 模型 py clas
  • 有没有办法创建带有两个输入字段的提示?

    有没有办法在 JavaScript 中创建带有两个输入字段的提示 我尝试了该代码 但它对我没有帮助 var a prompt A var b prompt B alert a n b 对于弹出的操作系统或本机浏览器窗口来说这是不可能的 您必
  • mongoDB时域触发器?

    我有一个基于节点的后端 与 mongoDb 实例集成 数据库有一组日历事件 每个事件都有一个唯一的日期时间字段 我正在尝试考虑在设定时间前 15 分钟执行提醒功能的最佳方式 我想到的唯一想法是使用 setInterval 一致地查询数据库
  • Python - 2D列表 - 查找一列中的重复项并对另一列中的值求和

    我有一个二维列表 其中分别包含足球运动员的姓名 他们进球的次数以及他们尝试射门的次数 player stats Adam 5 10 Kyle 12 18 Jo 20 35 Adam 15 20 Charlie 31 58 Jo 6 14 A
  • 将列表样式添加到 p 标签[重复]

    这个问题在这里已经有答案了 我知道这看起来很愚蠢 但我正在尝试将列表样式添加到 p 标签 由于 php 的循环方式 我无法将它们放入 li 标签中 所以我有点想把它们设计得像一个列表 我尝试过这样的事情 taskSubList text i
  • 对于随机浮点集的最佳排序算法是什么?

    我的一位同事今天下午刚刚提出了这个问题 这让我有些好奇 我精通排序算法 但缺乏 compsci compeng 的正式学位 我有点不愿意承认这一点 无法真正把手指放在这个上 p 哦 是的 这只是在 C NET 实现的上下文中 以防万一发生一
  • C++ 数组可以在内存边界结束吗?

    C 标准 以及就此而言的 C 允许创建 但不是取消引用 指向超出数组末尾的一个元素的指针 这是否意味着数组永远不会被分配到其最后一个元素在内存边界结束的位置 我知道在实践中 部分 所有实现可能遵循这一约定 但以下哪一项是正确的 这实际上是错
  • 如何为 CreateProcess() 启动的进程设置区域设置

    当启动一个进程时CreateProcessW 是否可以使用与配置为系统范围默认代码页不同的 MBCP 区域设置 代码页创建进程 在目标进程中 这应该与调用具有相同的效果 setmbcp 目标进程不支持 unicode 并且使用普通的main
  • 如果 REST 应用程序应该是无状态的,那么如何管理会话?

    我需要一些澄清 我一直在阅读有关 REST 的内容 并构建 RESTful 应用程序 根据维基百科 REST 本身被定义为代表性状态转移 因此我不明白这一切无国籍官样文章每个人都在不断吐槽 来自维基百科 在任何特定时间 客户端可以在 应用程
  • 在非 Symfony 项目中使用 Symfony 2 组件?

    为了在 PHP 中获得 XLIFF 2 支持 请在另一个答案 https stackoverflow com a 22057407 282729 有人建议 使用 Symfony 2 翻译组件 所以我下载了来自Github https git
  • ES6中的新规范“块级函数声明”是什么意思?

    我正在查看 es6 兼容性表尝试学习Here https kangax github io compat table es6 block level function note in the bindings部分它说 块级函数声明 除了官方