這篇文章主要介紹js原型不能傳參的示例分析,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
1、由于原型包含了引用類型值帶來的問題,在創建子類型的例子中,參數不能像超級類型的構造函數一樣傳遞。
2、傳遞給超類型的構造函數參數將改變繼承這種超類型子類型的所有實例。
實例
// 父構造函數 function Father(name, age) { this.age = age this.child = { name: name } } // 子構造函數 function Children() {} Children.prototype = new Father('father', 111) // 創建子實例 let c1 = new Children() let c2 = new Children() // 修改引用類型值 name c1.child.name = '修改引用類型值' // 修改值類型 age c1.age = 222 console.log(c1.age)// 222 console.log(c1.child)// { name: '修改引用類型值' } console.log(c2.age)// 111 console.log(c2.child)// { name: '修改引用類型值' }
在修改了某個實例的值類型age后,兩個實例的值類型age值不同。相反,在修改了某個實例的引用類型值后,所有實例的引用類型值都發生了變化,沒有隔離,共享了一個數據。
以上是“js原型不能傳參的示例分析”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。