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值仅由很少的操作构成:
.…和[…]运营商 