以前一直不知道call和apply到底怎么用, 今天看了一下视屏,好像是有点了解他们的一些用法了,下面我就来说说他们的一些用法吧.
首先看下下面的代码:
<script type="text/javascript">
function People () {
};
var man={
name:"xyy",
age:18,
say:function(m1,m2){
console.log("I can say:"+m1+m2)
}
}
man.say.call("People","你好","我好");
man.say.apply("People",["你好","我好"])
</script>
可以看到 构造函数People里面是没有任何东西的, 但是通过call和apply方法的话就能"借用"其他对象里面的东西,其实call和apply的作用都差不多,不同的就是参数的写法不同,这里再解释下call和apply,其实可以这样理解,就是说People通过call/apply向man这个对象借用了里面的say方法,就这么简单.