摘要:共經(jīng)歷了四個(gè)過程。創(chuàng)建了一個(gè)空對象設(shè)置原型鏈讓的指向,并執(zhí)行的函數(shù)體判斷的返回值類型,如果是值類型,返回。
new共經(jīng)歷了四個(gè)過程。
var fn = function () { }; var fnObj = new fn();
1、創(chuàng)建了一個(gè)空對象
var obj = new object();
2、設(shè)置原型鏈
obj._proto_ = fn.prototype;
3、讓fn的this指向obj,并執(zhí)行fn的函數(shù)體
var result = fn.call(obj);
4、判斷fn的返回值類型,如果是值類型,返回obj。如果是引用類型,就返回這個(gè)引用類型的對象。
if (typeof(result) == "object"){ fnObj = result; } else { fnObj = obj; }
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/81913.html
摘要:冬天來了,好好學(xué)習(xí),天天向上。在里面,得益于字面量對象,我們可以輕松的創(chuàng)建出一個(gè)對象,比如就可以直接創(chuàng)建對象。而在其它語言里面,無法通過這樣的方式創(chuàng)建一個(gè)對象,一般會借助構(gòu)造方法和運(yùn)算符。 冬天來了,好好學(xué)習(xí),天天向上。在js里面,得益于字面量對象,我們可以輕松的創(chuàng)建出一個(gè)對象,比如var o = {name: tom},就可以直接創(chuàng)建對象o。而在其它oo語言里面,無法通過這樣的方式創(chuàng)...
摘要:流程圖盜用一下官網(wǎng)關(guān)于生命周期的圖,對照之前的內(nèi)容梳理一下對照上面的分析基本上可以找到各個(gè)鉤子函數(shù)的位置,下面那個(gè)銷毀的我就沒用做分析了。。。 vue整體框架和主要流程分析 之前對看過比較多關(guān)于vue源碼的文章,但是對于整體框架和流程還是有些模糊,最后用chrome debug對vue的源碼進(jìn)行查看整理出這篇文章。。。。 本文對vue的整體框架和整體流程進(jìn)行簡要的分析,不對某些具體的細(xì)...
摘要:那么什么是基礎(chǔ)對象組件呢,舉兩個(gè)例子我們再來看看屬性訪問器,就是括號操作符及點(diǎn)號操作符都做了什么屬性訪問器也就是說括號跟點(diǎn)號對解釋器而言是一樣的。 ES規(guī)范解讀之賦值操作符&屬性訪問器 原文:https://github.com/kuitos/kuitos.github.io/issues/24事情起源于某天某妹子同事在看angular文檔中關(guān)于Scope的說明Understandin...
摘要:原文如果按面向?qū)ο蟮乃悸啡ブv的,還是很難去理解,我們可以從另一個(gè)方向去理解一下它。 原文:https://legacy.ofcrab.com/press/javascript-new.html 如果按面向?qū)ο蟮乃悸啡ブv JavaScript 的 new,還是很難去理解,我們可以從另一個(gè)方向去理解一下它。 你這些人類 我是一名程序員,也是一個(gè)人,我可能: 有一個(gè)響亮亮的名稱 在某一天出...
閱讀 3262·2021-11-11 11:00
閱讀 2582·2019-08-29 11:23
閱讀 1463·2019-08-29 10:58
閱讀 2347·2019-08-29 10:58
閱讀 2966·2019-08-23 18:26
閱讀 2523·2019-08-23 18:18
閱讀 2053·2019-08-23 16:53
閱讀 3427·2019-08-23 13:13