前言
回想起之前的一些面试,几乎每次都会问到一个js中关于call、apply、bind的问题,比如…
怎么利用call、apply来求一个数组中最大或者最小值
如何利用call、apply来做继承
apply...call、apply的区别
他们俩之间的差别在于参数的区别,call和aplly的第一个参数都是要改变上下文的对象,而call从第二个参数开始以参数列表的形式展现,apply则是把除了改变上下文对象的参数放在一个数组里面作为它的第二个参数...,-67,5,7,6,-8,687);
将伪数组转化为数组
js中的伪数组(例如通过document.getElementsByTagName获取的元素)具有length属性,并且可以通过0、1、2…下标来访问其中的元素...length属性 )
数组追加
在js中要往数组中添加元素,可以直接用push方法,
var arr1 = [1,2,3];
var arr2 = [4,5,6];
[].push.apply...(arr1, arr2);
// arr1 [1, 2, 3, 4, 5, 6]
// arr2 [4,5,6]
判断变量类型
对于对象型的数据类型,我们可以借助call来得知他的具体类型,例如数组