call、apply、bind的作用是改變函數運行時this的指向
*****
> ### call
> call 方法第一個參數是要綁定給this的值,后面傳入的是一個參數列表。當第一個參數為null、undefined的時候,默認指向window。
```
var arr = [1, 2, 3, 89, 46]
var max = Math.max.call(null, arr[0], arr[1], arr[2], arr[3], arr[4])//89
```
> ### apply
> apply接受兩個參數,第一個參數是要綁定給this的值,第二個參數是一個參數數組。當第一個參數為null、undefined的時候,默認指向window。
```
var arr = [1,2,3,89,46]
var max = Math.max.apply(null,arr)//89
```
轉載:[https://www.jianshu.com/p/bc541afad6ee](https://www.jianshu.com/p/bc541afad6ee)