资讯专栏INFORMATION COLUMN

ES2018 学习笔记(3)标识符

roland_reed / 2794人阅读

摘要:属性名属性访问器属性两种表示法点表示法,例如方括号表示法,例如其中,点表示法中要求之后必须跟着。回看上面提到的标识符的定义任何点表示法,都能转换成方括号表示法反之,则行不通。总结属性名不是标识符。

以下内容来至 es2017 语言规范和 javascript 高级程序设计(第三版)

起源:标识符的定义

在红宝书 3.1.2 章节中,对标识符做了如下定义:

An identifier is the name of a variable, function, property, or function argument.

对属性名是不是标识符我存有疑问?再看看 ES 规范的定义:

Identifier:
IdentifierName but not ReservedWord
属性相关定义 属性
property

part of an object that associates a key (either a String value or a Symbol value) and a value

属性名(上面提到的 key)其实是 String 或 Symbol 类型值。

属性名
PropertyName [Yield, Await]:
LiteralPropertyName
ComputedPropertyName[?Yield, ?Await]
属性访问器
Property Accessors:
Properties are accessed by name, using either the dot notation:

MemberExpression . IdentifierName
CallExpression . IdentifierName
or the bracket notation:

MemberExpression [ Expression ]
CallExpression [ Expression ]
The dot notation is explained by the following syntactic conversion:

MemberExpression . IdentifierName
is identical in its behaviour to

MemberExpression [ ]
and similarly

CallExpression . IdentifierName
is identical in its behaviour to

CallExpression [ ]
where is the result of evaluating StringValue of IdentifierName.

属性两种表示法:

点表示法,例如:Object.create

方括号表示法,例如:Object["any string"]Object["Expression" + "Expression"]

其中,点表示法中要求 . 之后必须跟着 IdentifierName。回看上面提到的标识符的定义:

IdentifierName but not ReservedWord

任何点表示法,都能转换成方括号表示法;反之,则行不通。

总结

属性名不是标识符。红宝书的定义比较通俗,但是总结的不算准确。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/97266.html

相关文章

  • JavaScript正则表达式学习笔记(二) - 打怪升级

    摘要:本文接上篇,基础部分相对薄弱的同学请移步正则表达式学习笔记一理论基础。正则表达式标志符全局匹配,即找到所有匹配的。方法返回结果的格式不一致问题这个问题上文正则表达式学习笔记一理论基础也有体现,这里再单独拿来说一说,以加深记忆。 showImg(https://segmentfault.com/img/remote/1460000014261596?w=600&h=338); 本文接上篇...

    Jioby 评论0 收藏0
  • 重学前端学习笔记(十八)--JavaScript的闭包和执行上下文

    摘要:申明与赋值立即执行的函数表达式,通过创建一个函数,并且立即执行,来构造一个新的域,从而控制的范围。函数接受一个的形参,该参数是一个对象引用,并执行了。在最新的标准中,引入了一个新概念。 笔记说明 重学前端是程劭非(winter)【前手机淘宝前端负责人】在极客时间开的一个专栏,每天10分钟,重构你的前端知识体系,笔者主要整理学习过程的一些要点笔记以及感悟,完整的可以加入winter的专栏...

    silencezwm 评论0 收藏0
  • 重学前端学习笔记(十八)--JavaScript的闭包和执行上下文

    摘要:申明与赋值立即执行的函数表达式,通过创建一个函数,并且立即执行,来构造一个新的域,从而控制的范围。函数接受一个的形参,该参数是一个对象引用,并执行了。在最新的标准中,引入了一个新概念。 笔记说明 重学前端是程劭非(winter)【前手机淘宝前端负责人】在极客时间开的一个专栏,每天10分钟,重构你的前端知识体系,笔者主要整理学习过程的一些要点笔记以及感悟,完整的可以加入winter的专栏...

    liaorio 评论0 收藏0
  • 重学前端学习笔记(十八)--JavaScript的闭包和执行上下文

    摘要:申明与赋值立即执行的函数表达式,通过创建一个函数,并且立即执行,来构造一个新的域,从而控制的范围。函数接受一个的形参,该参数是一个对象引用,并执行了。在最新的标准中,引入了一个新概念。 笔记说明 重学前端是程劭非(winter)【前手机淘宝前端负责人】在极客时间开的一个专栏,每天10分钟,重构你的前端知识体系,笔者主要整理学习过程的一些要点笔记以及感悟,完整的可以加入winter的专栏...

    caikeal 评论0 收藏0

发表评论

0条评论

roland_reed

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<