[英]Why can't I directly access a property of an object literal?
為什么以下語法
{a:1,b:2}.constructor
是無效的,而
[1,2].constructor
已驗證?
{a:1,b:2}.constructor
語法不是無效,但它不明確,因為{}
表示一個塊或一個對象? 因此,您必須使用括號消除歧義,例如({a:1,b:2}).constructor
。 現在JavaScript知道你打算使用一個對象。
如果您在明確是對象的上下文中使用該語法,則沒有歧義:
console.log({a:1,b:2}.constructor) // works fine
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.