javascript ES6中的匿名块是什么?

拉曼·夏尔马(Raman Sharma):

我正在从实用主义者那里了解有关ES6的新功能但是在这里您可以看到他们在该函数中使用了匿名块有人可以解释一下这是什么意思。它是任何JavaScript对象还是什么?我们如何使用它?还请提及一些参考。

function f() {
  var x = 1
  let y = 2
  const z = 3
  {
    var x = 100
    let y = 200
    const z = 300
    console.log('x in block scope is', x)
    console.log('y in block scope is', y)
    console.log('z in block scope is', z)
  }
  console.log('x outside of block scope is', x)
  console.log('y outside of block scope is', y)
  console.log('z outside of block scope is', z)
}

f()

某些性能:

这只是一个空白。任何时候遇到裸露的块,您都可以认为它等同于:

for (let i = 0; i < 1; i++) {
  // block contents here
}

要么

if (true) {
  // block contents here
}

没什么特别的,很少使用。它最重要的部分可能是如何const以及let在其中声明的变量仅作用于块,而不作用于外部函数。

它具有与Javascript中所有非功能块相同的行为-就像一个if块,一个while块或一个for块一样,只是没有条件输入,并且只执行一次。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

@@(“ at at”)在ES6 JavaScript中是什么意思?

Javascript(ES6)中的“ ...”是什么意思?

Javascript(ES6)中的“静态获取”是什么意思?

如何修复Javascript es6中的“函数声明不应放置在块中”错误?

纯JavaScript中的ES6

在JavaScript es6中使用...

ES6 JavaScript 中的括号

Javascript ES6类中的递归

yeoman中的ES6 JavaScript

JavaScript ES6 中的高效循环

将对象转换为包含多个JavaScript对象的数组的理想方法是什么?(允许使用ES6)

ES6 javascript中的at符号(@)有什么作用?(ECMAScript 2015)

在标准的 JavaScript ES6 环境中, .toString() 什么时候被调用过?

为什么在JavaScript中要实现哈希表,ES6映射通常比普通对象快?

有什么方法可以访问ES6 Javascript中的内部抽象操作?

为什么在Javascript ES6中未定义“ i”?

为什么在Javascript ES6“战争游戏”中丢失卡片?

为什么解构的工作方式与Javascript(ES6)中的经典分配方式不同?

为什么字段声明在 Javascript ES6 中没有关键字?

ES6中的函数范围变量(var)和块范围变量是什么?

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

ES6中块级功能的确切语义是什么?

JavaScript ES6`const a = {}`是可变的。为什么?

ES6 JavaScript 类

ES6 JavaScript继承

Javascript 集 ES6

JavaScript ES6承诺

在try块中返回之后,javascript最终块的执行顺序是什么?

Javascript中的+ =是什么?