undefined console.log(b.x);// --> [object Object] 上面的例子看似簡單,但結果并不好了解,很容易把人們給想繞了——a.x不是指向對象a了么?為" />

国产99久久精品_欧美日本韩国一区二区_激情小说综合网_欧美一级二级视频_午夜av电影_日本久久精品视频

最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當前位置: 首頁 - 科技 - 知識百科 - 正文

javascript引用類型指針的工作方式_javascript技巧

來源:懂視網 責編:小采 時間:2020-11-27 21:36:56
文檔

javascript引用類型指針的工作方式_javascript技巧

javascript引用類型指針的工作方式_javascript技巧:先看個例子: var a = {n:1}; var b = a; a.x = a = {n:2}; console.log(a.x);// --> undefined console.log(b.x);// --> [object Object] 上面的例子看似簡單,但結果并不好了解,很容易把人們給想繞了——a.x不是指向對象a了么?為
推薦度:
導讀javascript引用類型指針的工作方式_javascript技巧:先看個例子: var a = {n:1}; var b = a; a.x = a = {n:2}; console.log(a.x);// --> undefined console.log(b.x);// --> [object Object] 上面的例子看似簡單,但結果并不好了解,很容易把人們給想繞了——a.x不是指向對象a了么?為
先看個例子:


這時候發生了這個事情——a指向的對象{n:1}新增了屬性x(雖然這個x是undefined的):

從圖上可以看到,由于b跟a一樣是指向對象A的,要表示A的x屬性除了用a.x,自然也可以使用b.x來表示了。

接著,依循“從右往左”的賦值運算順序先執行 a={n:2} ,這時候,a指向的對象發生了改變,變成了新對象{n:2}(我們稱為對象B):

接著繼續執行 a.x=a,很多人會認為這里是“對象B也新增了一個屬性x,并指向對象B自己”

但實際上并非如此,由于一開始js已經先計算了a.x,便已經解析了這個a.x是對象A的x,所以在同一條公式的情況下再回來給a.x賦值,也不會說重新解析這個a.x為對象B的x。

所以 a.x=a 應理解為對象A的屬性x指向了對象B:

那么這時候結果就顯而易見了。當console.log(a.x)的時候,a是指向對象B的,但對象B沒有屬性x。沒關系,當查找一個對象的屬性時,JavaScript 會向上遍歷原型鏈,直到找到給定名稱的屬性為止。但當查找到達原型鏈的頂部 - 也就是 Object.prototype - 仍然沒有找到指定的屬性B.prototype.x,自然也就

輸出undefined;

而在console.log(b.x)的時候,由于b.x表示對象A的x屬性,該屬性是指向對象B,自然也輸出了[object Object]了,注意這里的[object Object]可不是2個對象的意思,對象的字符串形式,是隱式調用了Object對象的toString()方法,形式是:"[object Object]"。所以[object Object]表示的就只是一個對象罷了

以上所述就是本文的全部內容了,希望大家能夠喜歡。

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

javascript引用類型指針的工作方式_javascript技巧

javascript引用類型指針的工作方式_javascript技巧:先看個例子: var a = {n:1}; var b = a; a.x = a = {n:2}; console.log(a.x);// --> undefined console.log(b.x);// --> [object Object] 上面的例子看似簡單,但結果并不好了解,很容易把人們給想繞了——a.x不是指向對象a了么?為
推薦度:
標簽: js 類型的 javascript
  • 熱門焦點

最新推薦

猜你喜歡

熱門推薦

專題
Top
主站蜘蛛池模板: 日本大黄在线观看 | 国产在线精品一区二区高清不卡 | 久操视频在线免费观看 | 日韩免费一区二区三区在线 | 亚洲欧美另类第一页 | 国产一精品一aⅴ一免费 | 香蕉成人啪国产精品视频综合网 | 国产手机精品自拍视频 | 欧美 亚洲 中文字幕 | 国产亚洲精品成人婷婷久久小说 | 一级毛片一级毛片一级毛片 | 国产高清视频 | 一卡二卡在线 | a国产精品 | 亚洲 欧美综合小说区图片区 | 黄大片在线观看 | 国内精品伊人久久久久妇 | 亚洲精品一| 中文字幕免费 | 亚洲精品国产成人7777 | 欧美日韩视频在线 | 一区二区三区免费在线 | 欧美综合第一页 | 欧美一区二区三区四区在线观看 | 亚洲精品123区 | 欧美在线精品一区二区三区 | 自怕偷自怕亚洲精品 | 日韩视频高清 | 日本1区2区3区电 | 久久精品国产欧美成人 | 黄色在线视频网址 | 成人a毛片久久免费播放 | 最新偷窥盗摄视频在线 | 中文国产成人精品少久久 | 成人在线一区二区 | 日韩一区二区三区在线播放 | 欧美极品第一页 | 在线亚洲一区 | 欧美一区二区三区日韩免费播 | 在线播放国产色视频在线 | 国产最新精品视频 |