apply,call,bind,symbol的用法

Posted it-cuiyi

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了apply,call,bind,symbol的用法相关的知识,希望对你有一定的参考价值。

一、apply

  在特定的作用域中调用函数,等于设置函数体内this对象的值,以扩充函数赖以运行的作用域。

  this总是指向调用某个方法的对象,但是使用call()和apply()方法时,就会改变this的指向。

  接收两个参数,一个是函数运行的作用域(this),另一个是参数数组。

  用法举例

  Math.max.apply(null, array)

  Math.max(...array)

二、call

  在特定的作用域中调用函数,等于设置函数体内this对象的值,以扩充函数赖以运行的作用域。

  this总是指向调用某个方法的对象,但是使用call()和apply()方法时,就会改变this的指向。

  第一个参数和apply()方法的一样,但是传递给函数的参数必须列举出来。

  用法举例

三、bind

  返回一个函数

  用法举例

四、symbol

  Symbol 值通过Symbol函数生成。这就是说,对象的属性名现在可以有两种类型,一种是原来就有的字符串,另一种就是新增的 Symbol 类型。凡是属性名属于 Symbol 类型,就都是独一无二的,可以保证不会与其他属性名产生冲突。

  用法举例

以上是关于apply,call,bind,symbol的用法的主要内容,如果未能解决你的问题,请参考以下文章

JavaScript 中 call()apply()bind() 的用法

JavaScript 中 call()apply()bind() 的用法

JavaScript 中 call()apply()bind() 的用法

call,apply,bind的用法及区别

apply,call,bind的用法

JavaScript 中 call()apply()bind() 的用法