亚洲免费在线视频-亚洲啊v-久久免费精品视频-国产精品va-看片地址-成人在线视频网

您的位置:首頁技術文章
文章詳情頁

javascript - 為什么var obj = {}創建對象的方法里面不能用this.xxx來聲明屬性 ?

瀏覽:63日期:2023-03-15 09:44:51

問題描述

為什么var obj = {}創建對象的方法里面不能用this.xxx來聲明屬性 ?

如:

var person = { this.name = ’背鍋俠’;}

就會報錯.看了下它的構造器也是Object啊.會什么會有這樣.另外問下.json和對象有啥區別?

問題解答

回答1:

this的指向是未來不確定的調用者,跟作用域有關。誰調用函數,函數內部的this就指向誰。

function Person (name) { this._name = name;}var p1 = new Person(’sarah’);var p2 = new Person(’tom’);

以上使用 new 關鍵字調用 Person()函數,并傳入一個字符串’sarah’,作為name的值。此時,函數內部 this 的指向就是p1。同理,另一個就指向p2。如果直接調用 Person(’sarah’) 方法,由于 Person()的作用域是全局作用域,那么內部this就會指向window.

也就是說,this就是個替代品,指向的未來可能涉及的對象。它是不確定的。內部定義的屬性指向也會隨之變化。

但是像題主所采用的對象字面量形式,屬性name的指向是確定的,它就是屬于person。題主定義的 person 對象就等于我這里的p1。

另外,如樓上所說,json就是一種數據格式啦。方便前后臺傳輸數據。

不知道說清楚沒。。。新手作答。

回答2:

對象字面量創建對象不是這么寫的吧右面的部份明顯是JSON 格式,只接受Key-Value 的形式

JSON和對象的區別 舉個栗子

var obj ={ 'you' : 'a good boy' }右面的部分就是你提到的JSON 不管是寫到.json 里 還是.js 里都一樣其實就是一種數據格式 就長成這樣子

至于對象 萬物都是對象嘛 對象是個比較抽象的說法

構造器都是.json ? 對啊 都是一種數據格式嘛

回答3:

第一個問題你得去問Brendan Eich。 問問他為啥當初JavaScript要這么設計。

至于第二個問題,JSON是一種數據格式,而對象……就假定你說的是JavaScript吧,對象是JavaScript的一種數據類型

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 午夜在线成人 | 一区二区三区伦理 | 成人永久免费视频 | 京野结衣免费一区二区 | 欧美午夜免费毛片a级 | 精品国产亚洲人成在线 | 亚洲国产成人久久 | 欧美一区二区三区高清视频 | 国产一区二区亚洲精品天堂 | 欧美一级特毛片 | 在线欧美日韩精品一区二区 | 99re伊人| 天天干亚洲 | 国产伦精品一区二区三区无广告 | 国产专区中文字幕 | 欧美视频在线观在线看 | 国产黄色片在线免费观看 | 国产成人三级经典中文 | 久久国产乱子伦精品免费不卡 | 日韩在线三级视频 | 一区二区三区国产美女在线播放 | 亚洲欧美在线观看播放 | 国产亚洲精品一区二区久久 | 亚洲精品中文字幕字幕 | 黄色毛片三级 | 国产第一页久久亚洲欧美国产 | 国产爽的冒白浆的视频高清 | 女人张开腿让男人桶免费网站 | 欧美一级毛片生活片 | 日韩在线播放视频 | 久久久久久中文字幕 | 日本免费一级视频 | 亚洲国产专区 | 一区二区三区四区视频 | 国产亚洲精品一区二区久久 | 国产高清在线精品二区一 | 日韩一区二区三区视频在线观看 | 深夜国产成人福利在线观看女同 | 国产精品午夜波多野结衣性色 | 亚洲欧美日韩国产一区二区精品 | 一区二区三区四区在线播放 |