函数对象的内部方法call(), apply(), bind()

函数对象的内部方法call(), apply(), bind()

这三个函数都是指向函数本身的,call()和apply()的第一参数都是这个函数要执行的上下文对象,之后的参数是这个函数执行要传的参数,不同的地方时call是以枚举的方式传参,apply是以数组的形式传参,当然也可以传递arguments对象。bind()是把该函数绑定到指定的context上下文执行环境中,简单讲就是把该函数的this对象指向传到bind()中的参数context上,并返回一个函数实例。

简单的写个示例代码我们就可以了然了:

<script>
    function sayHi(name,greeting){
        var name = name||this.name,
        greeting = greeting||this.greeting;
        console.log("Hello "+name+","+greeting);
    }
     
    var name = "Terry",
    greeting = "how are you?",
    me = {name:"John",
    greeting:"你好!"};
    
    sayHi.call(this,name,greeting);
    sayHi.call(this);
    sayHi.apply(this,[name,greeting]);
    
    sayHi.apply(me,[me.name,me.greeting]);
    sayHi.call(me,me.name,me.greeting);
    //bind()会返回函数实例,后面加()直接执行
    sayHi.bind()();
    sayHi.bind(me)();
    </script>

 

 

 执行结果:

函数对象的内部方法call(), apply(), bind()

转载于:https://www.cnblogs.com/dingyuanxin/p/4143042.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/109632.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Origin简单绘图

    Origin简单绘图一、从cadence导出数据仿真生成波形之之后,鼠标选中波形,右击—>SendTo—>Export,进行csv数据的保存。打开该csv文件,删掉第一行,第一行是是横纵坐标的标识,左侧第一列是横坐标值,右侧列是纵坐标值。二、origin简单绘图双击图标打开origin导入csv数据可选中多个csv文件导入为了让两个csv的数据同时显示,在弹出的对话框进行以下操作(默认第二个csv数据会覆盖第一个csv数据)。设置好之后点击“确定”,两个csv数据均被导入到了o

    2022年6月1日
  • 求复数的对数[通俗易懂]

    求复数的对数[通俗易懂]其实除了0以外,复数是都可以求解对数的。用欧拉公式可以简单的得到结果。

    2022年10月29日
  • linux搭建php运行环境_linux系统开发环境搭建

    linux搭建php运行环境_linux系统开发环境搭建一、安装Apache2.2.221、到官网下载http://httpd.apache.org/download.cgi,选择相应的版本这里,我选择的是最新的版本可以先下载到windows系统中,上传到linux,也可以直接下载到linux:wgethttp://mirrors.tuna.tsinghua.edu.cn/apache//httpd/http…

    2022年9月2日
  • Angular 面试题汇总2-Component/Service (Angular v8+)

    Angular 面试题汇总2-Component/Service (Angular v8+)Angularv8+面试系列Angular面试题汇总1-基本知识.目录关于AngularComponentcss样式的作用域、ShadowDOM关于AngularService单例服务(singleton)forRoot()模式关于AngularComponentcss样式的作用域、ShadowDOMShadowDOM是HTML规范的一部分,它允许开发人员封装自己的HTML标记,CSS样式和JavaScript。创建样式Component时,可以通过设置,启用。@Com.

    2022年10月17日
  • SM8S33、TVS瞬态抑制二极管在汽车上的问题与应用

    SM8S33、TVS瞬态抑制二极管在汽车上的问题与应用随着经济的发展,现代汽车工业也在的高速发展,汽车的电子化、数字化、自动化、通讯化、自动驾驶等相关模块的成为汽车行主流方向;于此同时系统之间的EMC电磁兼容就显得尤为重要,我们专门为电气化的设计提供了高效的保护方案与应用!汽车电源系统的应用:1.首先了解一下基本情况:虽然高浪涌电压是汽车电路保护系统的应对对象,但是也要注意钳位的电压高度。电源系统,12V与24V的电池在指定的环境下最大输出电压的值。常见的稳压器和DC-DC转换器IC的最大输入电压的值。EMC电磁问题的解决,汽车电子系统是干扰源复杂

    2022年9月23日
  • Liunx常用命令

    Liunx常用命令Liunx常用命令

    2022年4月22日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号