第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

一個this的問題,瀏覽器和node的差異

一個this的問題,瀏覽器和node的差異

哆啦的時光機 2018-10-18 13:11:35
這個問題的代碼var fullname = 'John Doe';var obj = {  fullname: 'Colin Ihrig',  prop: {    fullname: 'Aurelio De Rosa',    getFullname: function () {      return this.fullname;    }  },  getFullname () {    return this.fullname;  }};console.log(obj.prop.getFullname());  //Aurelio De Rosaconsole.log(obj.getFullname()); //Colin Ihrigvar test = obj.prop.getFullname;// (這里瀏覽器 里面是對的, 但是node 這邊 是怎么處理了么。。this為global,但是fullname 并沒有上global)//當前文件全局的fullname 如果沒寫var 可以,但是寫了var 就是undefinedconsole.log(test());//John Doe上面的注釋是我的思路,為什么瀏覽器 按照我的走了,但是node沒有,最后的調(diào)用為undefined,是不是模塊這邊的原因 還是啥的。。。有點沒有頭緒。。
查看完整描述

1 回答

?
至尊寶的傳說

TA貢獻1789條經(jīng)驗 獲得超10個贊

執(zhí)行 test() 得到 this.fullname(this指向當前的全局變量), 在瀏覽器var fullname = 'John Doe' ,fullname掛載在window。但在node用var聲明是屬于局部的模塊變量,不加var才是全局變量,或global.fullname也是全局,所以就造成了兩個環(huán)境下的差距(在node的REPL運行你的代碼應該也是和瀏覽器一樣的)。


查看完整回答
反對 回復 2018-11-20
  • 1 回答
  • 0 關(guān)注
  • 557 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號