繁体   English   中英

此javascript语法的说明

[英]Explanation for this javascript syntax

为什么这在JavaScript中起作用?

undefined_variable_here: 2
它在控制台中返回2

然后我尝试了一下,它也起作用
{another_undefined_variable: 3}

是否有名称或解释?

您基本上是在创建标签 在第二种情况下,即使您觉得它是一个对象,也只是将其用block语句包围起来。 简而言之,就像您在两种情况下都为Web控制台键入了“ 2”一​​样。

您的第一个示例是带有标签的语句 :带有标签“ undefined_variable_here”的表达式“ 2”。 尽管JavaScript没有goto语句,但是在某些情况下,仍有几种方法可以跳转到特定的语句。 为了做到这一点,这些语句需要附加某种标识符,以便机器知道要去哪里,并且标签提供该标识符。

第二个示例是对象文字一个对象的表达式,该对象具有一个名为“ another_undefined_variable”的属性,其值为3。

在这两种情况下,分号插入都会隐式结束语句 因此,第一个示例实质上等同于以下语句:

2;

该语句本身并不是很有用,因为它不会执行任何操作,但是它合法的JavaScript。 第二个示例实际上做了一些工作,因为它必须创建对象,但是因为它没有放入变量中,所以没有剩余的引用:您无法做到这一点,并且垃圾回收器将在下一次机会清除它。 仍然不是很有用,但仍然合法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM