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

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

JAVASCRIPT OOP 閉包 this指代 動(dòng)態(tài)get,set

JAVASCRIPT OOP 閉包 this指代 動(dòng)態(tài)get,set

紅糖糍粑 2019-03-19 18:19:44
function User( properties ){  for( var i in properties ){    (function( which ){      var p = i;      which[ "get" + i ] = function(){        return properties[p];      };      which[ "set" + i ] = function(val){        properties[p] = val;      }    })(this);  }}var user = new User({  name : "Bob",  age : 44});console.log(user.name);console.log(user.getname());console.log(user.getage());這是JS面向?qū)ο缶幊虝系囊粋€(gè)例子,我想問問這個(gè)實(shí)際有用處嗎? 雖然我對(duì)閉包什么的略知一點(diǎn)可是這里的 which this val 搞的我好暈 求牛人解釋一下。。。再問一個(gè)Function.prototype.method = function(name, func){    this.prototype[name] = func;    return this;};所以name必須是個(gè)string? this.prototype[name]中的this 和 return this 分別指的是?
查看完整描述

3 回答

?
收到一只叮咚

TA貢獻(xiàn)1821條經(jīng)驗(yàn) 獲得超5個(gè)贊

題主,你是不理解which this val么?
如果是,我這里描述一下。


this指向的是function的調(diào)用對(duì)象 //大概這么理解
https://img1.sycdn.imooc.com//5cb298710001a1b606890143.jpg

所以 里面那個(gè)this,就表示User {};

(function(w){

  //調(diào)用w

  w;

})(a);//實(shí)際上w就相當(dāng)于a了

對(duì)應(yīng)你這個(gè)例子,效果就是使得 你后面 user.getname是一個(gè)function


而那個(gè)val,例子沒點(diǎn)出來用法,就是user.setname("我是技術(shù)宅")

想想function函數(shù)表達(dá)式和定義表達(dá)式。


查看完整回答
反對(duì) 回復(fù) 2019-04-14
  • 3 回答
  • 0 關(guān)注
  • 405 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

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