ECMAScript(ECMA-262 5.1)中`reference`的“基本值”是什么?

时间:2015-03-30 18:08:37

标签: javascript ecmascript-5

我一直在努力了解如何在javascript中设置this值,并发现ECMAScript语言规范非常有用。我正在阅读section 8.7 reference specification type,并发现ECMAScript中的引用由3个组件base valuereferenced namestrict reference flag组成,以便了解section 11.2.3

我可以假设他们的名字是referenced namestrict reference flag,但我不明白base value是什么。该文档称base valueundefinedStringBooleanNumberObject,但未说明如何设置它是什么。我猜这是类似于上下文对象的东西。谁能解释一下?

1 个答案:

答案 0 :(得分:6)

是的,基础值是引用名称所在的上下文。

对于对象属性,这将是对象(有关setter / getter操作,请参阅§8.12 Object internal methods)。对于变量,这将是变量环境(§10.2.1 Environment records)。对于无法解析的引用(抛出引用错误except when supplied to typeof的内容),这将是undefined

  

它没有说明如何设置

Reference值仅由极少数操作构成: