ECMAScript(ECMA。)中`reference'的`base value`是什么?
我一直在试着理解如何在javascript中设置this
值,并发现ECMAScript语言规范非常有用。 我正在阅读第8.7节reference specification type
,发现ECMAScript中的引用由3个分量, base value
, referenced name
, strict reference flag
以了解第11.2.3节。
我可以假设他们的referenced name
中referenced name
和strict reference flag
是什么,但我不明白base value
是什么。 该文件说base value
是undefined
, String
, Boolean
, Number
和Object
,但它没有说明它是如何设置的以及它是什么。 我猜测它与上下文对象相似。 谁能解释一下?
是的,基准值是引用名称所在的上下文。
对于一个对象属性,这将是对象(参见§8.12对象内部方法setter / getter操作)。 对于变量,这将是可变环境(§10.2.1环境记录)。 对于一个无法解析的引用(抛出引用错误的东西除了提供给typeof
),这将是undefined
。
它没有说明它是如何设置的
Reference
值仅由很少的操作构成:
.…
和[…]
运营商