首頁 >web前端 >js教程 >物件題目的一個坑 理解Javascript物件_javascript技巧

物件題目的一個坑 理解Javascript物件_javascript技巧

WBOY
WBOY原創
2016-05-16 15:24:101163瀏覽

這篇的例子,主要是來引起對Javascript對象的理解及注意的。其實是一種面試時的一個坑,實際專案中也很少用得到,但是為了提高警覺性,我們來看這個例子:

代碼名稱

var first = {};
var second = {k:"second"};
var third = {k:"third"};
first[second] = 100;
first[third] = 200;
console.log(first[second])//这里会输出什么内容呢?

如果要自己做這個題,後面的解釋先不看。

這裡會輸出什麼樣的結果呢?可能大部分人會覺得結果是100,或是題目有錯誤,再或結果是200。

其實最終結果是200

為什麼? 因為second、third都是對象,而且都是[object object],因此first[second] 等價於first[[object object]] 同樣first[third] 等價於first[[object object]] 所以最終的結果可以是first["[object object]"],例子中對這個表達式進行了兩次賦值操作,所以最終的結果是200。

所以在javascript中,很多的細節需要我們去注意的,或許就是那些面試者,不知道出什麼面試題,盡出這些陷阱式的題目。不過,我們就是需要把基礎打牢固了,什麼都不怕! 後續我會繼續出一些題目來做講解!

透過一個簡簡單單的例題,引發了大家的思考,為大家學習javascript物件提供了有了許多啟發,希望大家有所收穫。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn