這篇文章將分享關於JavaScript中建構函數的知識,有一定的參考價值。希望對大家學習有幫助。
建構函數其實也就是常規函數,但是在命名時首字母要大寫,並且調用建構函數時注意要用new關鍵字實例化,這樣的使用意味著this在開始時創建空,並結束時返回填充的空,接下來將在文章中為大家詳細介紹。
建構子產生
this在開始時建立空,並在結束時傳回填滿的空
function Student(name age){ this.name=name; this.age=age; } var student=new Student("张三","18"); var student1=new Student("李四","19");
在執行函數的過程時Student()時會執行以下步驟:
(1)建立並指派新的空物件this。
(2)函數體執行。通常它會修改this,為其新增屬性。
(3)this回傳值。
同樣,如果我們想要建立更多的student,我們可以呼叫new Student(),每次方法簡單而且也易於閱讀。
這是建構函式的主要目的:實作可重複使用的物件建立程式碼。
建構子回傳
一般情況下,建構子沒有return聲明,他們的任務是將所需的東西寫入this,並自動產生結果。
但是如果有return的話,就會變得很簡單了,比如return使用object調用,則返回的不是this,也就是return對象返回該對象,this則返回所有其他情況
例如,這裡透過回傳一個物件來return覆蓋this
function Student() { this.name = "张三"; return { name: "李四" }; //return 一个对象 } console.log( new Student().name );
因為return 一個對象,所以返回的是return裡面的值而不是this中的值
但是如果我們return的是一個空值,那麼回傳的就是this值
<script> function Student() { this.name = "张三"; return; //return 一个空对象 } console.log(new Student().name ); </script>
建構子中的方法
建構子不只可以加入屬性還可以加入方法,讓建構子來建立物件更有彈性
<script> function Student(name) { this.name = name; this.friend=function(){ console.log("this my friend:"+this.name); }; } var student=new Student("张三"); student.friend(); </script>
總結:以上就是本篇文章的全部內容了,希望對大家學習建構子有所幫助。
以上是JavaScript中建構函數如何使用的詳細內容。更多資訊請關注PHP中文網其他相關文章!