2016-10-25 87 views

回答

4

因爲{O: 'Ida', I: 'Regreso'}是在此上下文中的對象,這是與標籤O的塊後跟字符串文字表達式'Ida',然後逗號運營商,另一個標籤(這是一個語法錯誤在這一點),而另一個字符串文字表達。 (這是常見WAT的來源,[] == {} vs {} == [],在第一種情況下,它是「數組文字等於對象文字」,第二種情況是「空格等於數組文字」(這是一個語法錯誤) )

其原因是由於解析上下文,{O: 'Ida', I: 'Regreso'}只會被放置在表達式上下文中才被視爲對象。其中最常見的方式做到這一點,是用括號括起來,就像這樣:

console.log(({O: 'Ida', I: 'Regreso'})['O'])

你可以看到你的表情解釋withwithout括號(圓括號)。