JavaScript的new操作符

以前常常用的new運算符厘肮,一new就出來一個對象转砖,神奇的很恢筝,現(xiàn)在我們來看見這個new底層究竟干了些什么


一、解析new運算

new一個對象

    function Test(name,age){
        this.name = name;
        this.age = age
        this.method = function (){
            return this.name +':'+ this.age;
        }
    }
    var t1 = new Test('kuohao',21);
    t1.method();      //輸出 'kuohao':21

使用了new這個運算符料睛,t1就成為了一個對象丐箩,也擁有了Test構(gòu)造函數(shù)的method方法,這個new方法究竟做了什么恤煞?


實際上new方法的后臺是這樣的

    //var t1 = new Test('kuhao',21)
    //new Test 相當(dāng)于以下代碼
    
    function Test(name,age){
        //新建了一個對象,this指向了新建的當(dāng)前對象
        var t1 = {};
        //讓this的原型對象繼承Test的原型對象屬性和方法屎勘。
        t1.constructor.prototype = Test.prototype;
        //將傳進來的參數(shù)賦給this的屬性
        t1.name = name;
        t1.age = age
        t1.method = function (){
            return this.name +':'+this.age;
        };
        
        //最后返回出這個t1對象
        return t1;
    }

或者可以使用call方法去理解 new Test 構(gòu)造

//后臺新建一個對象
var obj = {};
//讓對象實例的原型對象繼承Test構(gòu)造函數(shù)的原型屬性和方法
obj.__proto__ = Test.prototype
//使用call方法把Test構(gòu)造函數(shù)的實例屬性和方法都拿過來為已所用,即是繼承
Test.call(obj,'kuohao',21);

總結(jié)

我的個人理解就是new運算符將構(gòu)造函數(shù)實例化構(gòu)造對象居扒,事實上就是繼承了構(gòu)造函數(shù)的實例屬性實例方法和原型屬性和原型方法概漱,初始化了對象,對象是JavaScript中預(yù)定義的喜喂,但是可以讓我們?nèi)U展它瓤摧,實現(xiàn)更多的功能。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末玉吁,一起剝皮案震驚了整個濱河市姻灶,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌诈茧,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,470評論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件捂掰,死亡現(xiàn)場離奇詭異敢会,居然都是意外死亡,警方通過查閱死者的電腦和手機这嚣,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,393評論 3 392
  • 文/潘曉璐 我一進店門鸥昏,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人姐帚,你說我怎么就攤上這事吏垮。” “怎么了罐旗?”我有些...
    開封第一講書人閱讀 162,577評論 0 353
  • 文/不壞的土叔 我叫張陵膳汪,是天一觀的道長。 經(jīng)常有香客問我九秀,道長遗嗽,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,176評論 1 292
  • 正文 為了忘掉前任鼓蜒,我火速辦了婚禮痹换,結(jié)果婚禮上征字,老公的妹妹穿的比我還像新娘。我一直安慰自己娇豫,他們只是感情好匙姜,可當(dāng)我...
    茶點故事閱讀 67,189評論 6 388
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著冯痢,像睡著了一般氮昧。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上系羞,一...
    開封第一講書人閱讀 51,155評論 1 299
  • 那天郭计,我揣著相機與錄音,去河邊找鬼椒振。 笑死昭伸,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的澎迎。 我是一名探鬼主播庐杨,決...
    沈念sama閱讀 40,041評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼夹供!你這毒婦竟也來了灵份?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,903評論 0 274
  • 序言:老撾萬榮一對情侶失蹤哮洽,失蹤者是張志新(化名)和其女友劉穎填渠,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體鸟辅,經(jīng)...
    沈念sama閱讀 45,319評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡氛什,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,539評論 2 332
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了匪凉。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片枪眉。...
    茶點故事閱讀 39,703評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖再层,靈堂內(nèi)的尸體忽然破棺而出贸铜,到底是詐尸還是另有隱情,我是刑警寧澤聂受,帶...
    沈念sama閱讀 35,417評論 5 343
  • 正文 年R本政府宣布蒿秦,位于F島的核電站,受9級特大地震影響蛋济,放射性物質(zhì)發(fā)生泄漏渤早。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,013評論 3 325
  • 文/蒙蒙 一瘫俊、第九天 我趴在偏房一處隱蔽的房頂上張望鹊杖。 院中可真熱鬧悴灵,春花似錦、人聲如沸骂蓖。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,664評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽登下。三九已至茫孔,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間被芳,已是汗流浹背缰贝。 一陣腳步聲響...
    開封第一講書人閱讀 32,818評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留畔濒,地道東北人剩晴。 一個月前我還...
    沈念sama閱讀 47,711評論 2 368
  • 正文 我出身青樓,卻偏偏與公主長得像侵状,于是被迫代替她去往敵國和親赞弥。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,601評論 2 353

推薦閱讀更多精彩內(nèi)容