国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

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

JavaScript構造函數原理及實現流程解析

瀏覽:102日期:2023-10-07 17:08:29

在學習構造函數之前我們需要知道我們學習構造函數需要學習什么:

1.什么是構造函數

2.構造函數用來做什么

3.構造函數的執行過程

4.構造函數的返回值

1.所以首先我們需要知道什么是構造函數:

在我看來,構造函數具有兩個特點可以判斷是否為構造函數:

1.當函數名為首字母大寫時,這個是一個可以大概判斷構造函數與普通函數的一個特點,但是不是絕對正確,因為普通函數也可以是大寫字母開頭

2.當我們需要調用構造函數時我們需要new <構造函數>,也就是產生一個實例化對象。

function Student(name,age,sex,height){ this.name=name; this.age=age; this.sex=sex; this.height=height; } //調用構造函數,也就是實例化一個對象。 var p=new Student(’luke’,23,’nan’,180) console.log(p);

控制臺輸出:

JavaScript構造函數原理及實現流程解析

可以看出輸出的是一個對象

2.構造函數是用來做什么的:

1.當我們平時創建對象時可能會用如下創建對象的方式來創建,上代碼:

//用創建對象方式來創建 var stu1={name:’zs’,age:20,sex:'male',height:186}; var stu2={name:’ls’,age:21,sex:'male',height:180} var stu3={name:’ww’,age:22,sex:'female',height:156} var stu4={name:’jx’,age:23,sex:'female',height:165} var stu5={name:’xf’,age:24,sex:'male',height:180}

2.當我們用構造函數來創建這個對象時:

//用構造函數來創建對象 function Student(name,age,sex,height){ this.name=name; this.age=age; this.sex=sex; this.height=height; } var stu1=new Student(’zs’,20,'male',186); var stu2=new Student(’ls’,21,'male',180); var stu3=new Student(’ww’,22,'female',156); var stu4=new Student(’jx’,23,'female',165); var stu5=new Student(’xf’,24,'male',180);

這樣看起來是不是要簡潔的多呢,這里因為只有五個人,要是五六十個就會看出明顯效果

3.構造函數的執行過程

在前面我們知道了構造函數是什么,和其作用,也通過代碼來看出了構造函數的作用。那我現在我們需要知道構造函數的執行過程,因為學習一個東西我們需要學習其原理,而不是其表面

所以接下來我就來講一講構造函數的執行過程:

在之前我們都知道,要調用構造函數我們需要在其前面加一個new關鍵字,所以主要就是new在其作用,在執行new關鍵字后,很明顯,他跟以往的函數調用就不同了,他會依次執行以下步驟:

1.new過后會產生一個空對象,作為一個返回的對象實例

2.將空對象的原型指向了構造函數的prototype屬性

3.將空對象的值賦值給構造函數里面的this值

4.開始執行構造函數里的代碼

4.構造函數的返回值

知道了其執行過程,顯而易見,new關鍵字創建的實例對象為構造函數的返回值。

其實這是不對的,哈哈。

返回值需要分情況來定:

1.當函數中沒有return來返回值的時候,會返回this,也就是實例化對象。就像在說2.構造函數有什么作用時說的一樣

2.當函數中return中返回一個復雜類型數據的時候,構造函數會返回這個復雜類型數據,上代碼:

function Student(name,age,sex,height){ this.name=name; this.age=age; this.sex=sex; this.height=height; return {name:’fanhui’,weight:60} } var Stu1=new Student(’zs’,20,'male',186); console.log(Stu1);

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 国产成人ay手机在线观看 | 中文字幕在线看视频一区二区三区 | 久久综合狠狠综合久久97色 | 一级做性色a爱片久久片 | 欧美日韩国产亚洲一区二区三区 | 成年女人免费视频播放成年m | 国产一区日韩二区欧美三 | 国产亚洲精品久久久久久久 | 国产日韩欧美亚洲 | 热99re久久精品香蕉 | 国产自线一二三四2021 | 美女131爽爽爽做爰中文视频 | 久草 在线 | 欧美一级毛片免费高清的 | 国产一国产a一级毛片 | 亚欧成人毛片一区二区三区四区 | 玖玖这里只有精品 | 国产深夜福利视频网站在线观看 | 国产精品久久久久一区二区 | 波多野结衣aⅴ在线 | 亚洲综合成人在线 | 在线观看一区二区三区四区 | 日本三级成人中文字幕乱码 | 成人网视频免费播放 | 欧美日韩一区二区三区在线播放 | 色综合九九| 亚洲国产精品日韩在线 | 亚洲国产欧美在线成人aaaa | 给我一个可以看片的www日本 | 91久久国产口精品久久久久 | 一个人看的www片免费视频中文 | 日本暖暖视频在线播放 | 99视频免费在线 | 精品日本一区二区三区在线观看 | a级毛片免费全部播放 | 精品国产免费第一区二区 | www.黄色片 | 免费国产成人高清在线看软件 | 欧美在线视频一区 | 成人精品一区二区三区 | 国产免费一区二区三区免费视频 |