let test={}test.func=function(){}
給對象添加方法需為什么需要用到原型對象,直接添加不是也可以嗎
函數式編程
2019-03-18 14:27:02
TA貢獻1824條經驗 獲得超8個贊
如果你此函數是一個構造函數,比如
function animal() {}let dog = new animal() dog.move = function () { console.log('move') }
這樣添加方法后,只有在dog這個實例里面才能訪問到move函數
但是你想每個動物都有這個move函數
直接添加到animal()會在初始化實例的時候初始化此move函數,不符合高效的標準
所以都會添加到原型上
在prototype上的方法只會初始化一次,可以提供給所有實例使用,符合節省內存開銷的標準
所以一般都會添加到原型對象
舉報