TypeScript是否有变量名称转义功能,如Scala中的反引号,用于文字标识符?

时间:2016-07-13 08:20:01

标签: scala typescript naming

TypeScript是否具有转义功能的变量名称,例如Scala中用于文字标识符的反引号:

`0029-otherwise-illegal-scala-literal`

请参阅Need clarification on Scala literal identifiers (backticks)

中的Scala说明

1 个答案:

答案 0 :(得分:3)

您可以在https://github.com/Microsoft/TypeScript/blob/master/doc/spec.md#8.2

找到规范

第2.2.2节告诉你

  

重现ECMAScript语法中的PropertyName生成   下面:

     

PropertyName:LiteralPropertyName ComputedPropertyName

     

LiteralPropertyName:IdentifierName StringLiteral   NumericLiteral

     

ComputedPropertyName:[AssignmentExpression]

     

属性名称可以是任何标识符(包括保留字),a   字符串文字,数字文字或计算属性名称。串   文字可用于提供无效的属性名称   标识符,例如包含空格的名称。数字文字属性   名称等同于带字符串的字符串文字属性名称   数字文字的表示,如ECMAScript中所定义   说明书

这包括字符串文字。

您可以将属性声明为字符串文字:

class MyClass {
  "return" = 1;
}

您可以使用方括号

访问它
let myinstance = new MyClass()
let one = myinstance["return"]