欢迎光临散文网 会员登陆 & 注册

千锋教育JavaScript全套视频教程(10天学会Js,前端javascrip

2023-07-19 18:11 作者:旗木卡卡西bili  | 我要投稿

一.this关键字的解读

  1.每一个函数内部都有一个关键字是this ,可以让我们直接使用的

  2.函数内部的 this 只和函数的调用方式有关系,和函数的定义方式没有关系

  3.函数内部的 this 指向谁,取决于函数的调用方式

一.call,apply,bind的区别

它们的作用是相同的,都是动态的修改当前函数内部的this的指向。

1.执行方式不同:

call和apply是改变后就立即执行函数,bind改变后不会立即执行;而是返回一个新的函数,需要再次调用。

2.传参方式不同:

call 第一个参数this指向,从第二个参数开始就是函数的参数。

bind 第一个参数this指向,从第二个参数开始就是函数的参数,返回的是函数体,继续通过调用可再次传入参数。 apply第一个参数this指向,第二个参数是数组,函数自身的参数放到数组里面。

3.修改this的性质不同

call、apply只是临时的修改一次,修改就是call和apply方法使用的那一次;当再次调用原函数的时候,它的指向还是原来的指向。

bind是永久修改函数this指向,但是它修改的不是原来的函数;而是返回一个修改过后新的函数,此函数的this永远被改变了,绑定了就修改不了。

千锋教育JavaScript全套视频教程(10天学会Js,前端javascrip的评论 (共 条)

分享到微博请遵守国家法律