1怔锌、people.apply(student,arg);
把people的屬性和方法給student窘游,按照arg順序傳入?yún)?shù)
2覆获、Math.max.apply(null,arr);
本來是Math.max(a,b,c,d)這種衣吠,無法直接輸入一個數(shù)組罚随,此時利用apply傳參性質(zhì)就可以直接傳數(shù)組。
這里的null丁逝,我的理解是因為這個方法返回就是一個數(shù)字汁胆,不涉及帶作用域的返回,所以用null不影響
3霜幼、Array.prototype.push.apply(arr1,arr2);
原本是arr1.push(a,b,c,d);
此時Array.prototype也可以寫成任何數(shù)組嫩码,因為每個數(shù)組的原型鏈上都有push這個方法。
總結(jié):A.apply(B,arg);是A把自己的方法交給B來做罪既,這時候B就有了A的方法铸题;第二可以使傳參從散的參數(shù)變成數(shù)組。這是apply最重要的兩個作用點琢感。
4回挽、Array.apply(null, {length:20}).map(function(){
returncreateElement('p','hi')
? ? })