JavaScript中如何区分并运用bind、call、apply方法?

更新于
2026-09-24 23:36:00
0阅读来源:SEO基础
  • 内容介绍
  • 文章标签
  • 相关推荐

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

JavaScript中如何区分并运用bind、call、apply方法?

`使用 call 的基本方法示例:var ary=[12, 23, 34];ary.slice.call();`

以上两行简单代码的执行过程为:ary 这个实例通过原型链的查找机制,找到了 Array.prototype 上的 slice 方法,并执行了这个方法。在 slice 方法执行时,通过 call 函数,slice 方法接收了当前数组对象(ary)作为它的 this 对象,并调用 slice 方法,不传入任何参数,从而返回了原数组的一个浅拷贝。

call的基本使用

var ary = [12, 23, 34]; ary.slice();

以上两行简单的代码的执行过程为:ary这个实例通过原型链的查找机制找到Array.prototype上的slice方法,让找到的slice方法执行,在执行slice方法的过程中才把ary数组进行了截取。

JavaScript中如何区分并运用bind、call、apply方法?

注意slice方法执行之前有一个在原型上查找的过程(当前实例中没有找到,再根据原型链查找)。

阅读全文

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

JavaScript中如何区分并运用bind、call、apply方法?

`使用 call 的基本方法示例:var ary=[12, 23, 34];ary.slice.call();`

以上两行简单代码的执行过程为:ary 这个实例通过原型链的查找机制,找到了 Array.prototype 上的 slice 方法,并执行了这个方法。在 slice 方法执行时,通过 call 函数,slice 方法接收了当前数组对象(ary)作为它的 this 对象,并调用 slice 方法,不传入任何参数,从而返回了原数组的一个浅拷贝。

call的基本使用

var ary = [12, 23, 34]; ary.slice();

以上两行简单的代码的执行过程为:ary这个实例通过原型链的查找机制找到Array.prototype上的slice方法,让找到的slice方法执行,在执行slice方法的过程中才把ary数组进行了截取。

JavaScript中如何区分并运用bind、call、apply方法?

注意slice方法执行之前有一个在原型上查找的过程(当前实例中没有找到,再根据原型链查找)。

阅读全文