gpt4 book ai didi

javascript - ECMAScript 2017 : Difference between string literal, StringValue、字符串值和 SV

转载 作者:行者123 更新时间:2023-12-02 18:49:16 29 4
gpt4 key购买 nike

以下摘录引用ECMAScript 2017 .

11.8.4.2 静态语义:StringValue

StringLiteral::
"DoubleStringCharactersopt"
'SingleStringCharactersopt'

1. Return the String value whose elements are the SV of this StringLiteral.

11.8.4.3 静态语义:SV

A string literal stands for a value of the String type. The String value (SV) of the literal is described in terms of code unit values contributed by the various parts of the string literal.

问题

在上面的摘录中,出现了以下术语:

  1. 字符串文字
  2. 非终结符号StringLiteral
  3. 字符串值
  4. SV

有人可以帮忙解释一下这些术语之间的区别吗?

另外,11.8.4.2中的最后一句是什么意思?

最佳答案

字符串文字是您(编写或阅读代码的人)可以将其识别为序列 "..."'.. .'

token StringLiteralnonterminal在 EMCAScript 的形式语法中,可以用实际字符串文字的终端来替换。

字符串值是字符串文字的语义内容。规范说

The String value (SV) of the literal is ...

因此,我们可以确定字符串文字一个字符串值:某些字符串文字的字符串值是代码单元值的集合。

标识符 SV 似乎是“字符串值”的简写(并可互换使用)。

<小时/>

Also, what does the last sentence in 11.8.4.2 mean?

每个非终结符在求值时都会“返回”一些值。线路

Return the String value whose elements are the SV of this StringLiteral.

简单地说,当解析器在程序文本中找到 StringLiteral 时,解析该非终结符的结果是与刚刚解析的 StringLiteral 关联的字符串值(即代码单元值的集合)。

关于javascript - ECMAScript 2017 : Difference between string literal, StringValue、字符串值和 SV,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49635409/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com