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() 的用法