JavaScript中call与apply的深层原理和用法如何巧妙结合?

2026-04-02 21:580阅读0评论SEO资源
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计1979个文字,预计阅读时间需要8分钟。

JavaScript中call与apply的深层原理和用法如何巧妙结合?

目录+定义+模拟步骤1+模拟步骤2+模拟步骤3+第一个参数传null或undefined,this指向window+函数执行call方法,有返回值,则返回该值+最终版实现call代码+实现apply代码+结句+定义call和apply:

目录
  • 定义
  • 模拟步骤1
  • 模拟步骤2
  • 模拟步骤3
    • 第一个参数传null或undefined,this指向为window
    • 函数执行call方法,有返回值,那就返回。
    • 最终版实现call代码
  • 实现apply代码
    • 结语

      定义

      call和apply:函数调动call()方法在执行的时候,函数的里面的this会指向第一个参数值,除第一个参数值后面的若干支都是传进该函数,简而言之就是改变函数运行时的this指向。

      使用示例: fn.call(obj, args1, args2...), fn.apply(obj, [arg1, arg2 ...]), call与apply调用除了第二个传参方式不一样,其余一样。

      阅读全文

      本文共计1979个文字,预计阅读时间需要8分钟。

      JavaScript中call与apply的深层原理和用法如何巧妙结合?

      目录+定义+模拟步骤1+模拟步骤2+模拟步骤3+第一个参数传null或undefined,this指向window+函数执行call方法,有返回值,则返回该值+最终版实现call代码+实现apply代码+结句+定义call和apply:

      目录
      • 定义
      • 模拟步骤1
      • 模拟步骤2
      • 模拟步骤3
        • 第一个参数传null或undefined,this指向为window
        • 函数执行call方法,有返回值,那就返回。
        • 最终版实现call代码
      • 实现apply代码
        • 结语

          定义

          call和apply:函数调动call()方法在执行的时候,函数的里面的this会指向第一个参数值,除第一个参数值后面的若干支都是传进该函数,简而言之就是改变函数运行时的this指向。

          使用示例: fn.call(obj, args1, args2...), fn.apply(obj, [arg1, arg2 ...]), call与apply调用除了第二个传参方式不一样,其余一样。

          阅读全文