• call方法


    call方法的作用:

    函数名.call(对象,arg1....argn)

    1.将this指向第一个参数

    2.将第二个及以后所有的参数,作为实参传递给函数

    var person = {
      fullName: function(city, country) {
        return this.firstName + " " + this.lastName + "," + city + "," + country;
      }
    }
    var person1 = {
      firstName:"Bill",
      lastName: "Gates"
    }
    person.fullName.call(person1, "Seattle", "USA");

    apply方法的使用:
    函数名.apply(对象, 数组/伪数组)
    1. var a=Math.max.apply( null, [ 1, 2, 5, 3, 4 ] );
    2.  console.log(a);// 输出:5

     bind方法的使用:

    1. var a=Math.max.bind( null, 1,2,3,4,5 )();
    2.  console.log(a);// 输出:5

    注意事项

     1.call和apply只是传参方式的区别,apply可以通过数组的方式传参

    2.call和apply的第一个参数如果是null和underfined,那么this会指向windows

    3.call和apply的第一个参数如果为值类型的数据,那么会将这个值类型的数据,转换成其对应的引用类型的数据,然后再将this指向这个引用类型的数据

    4.call和apply立即执行这个函数,bind方法可以让对应的函数想什么时候调就什么时候调用,并且可以将参数在执行的时候添加,这是它们的区别,根据自己的实际情况来选择使用。
    5.当参数的个数确定的情况下可以使用call;当参数的个数不确定的情况下可以使用apply

     

     

    我要再和生活死磕几年,要么我就毁灭,要么我就注定辉煌,如果有一天,你发现我在平庸面前低了头,请向我开炮。
  • 相关阅读:
    SpringMVC——拦截器及文件上传和下载
    SpringMVC——数据处理
    SpringMVC——返回结果及指定视图
    SpringMVC——SpringMVC配置
    SpringMVC——简介及原理简单分析
    Kakfa和其他类型消息中间件对比图
    Kafka消费者——结合spring开发
    Kafka生产者——结合spring开发
    五大浏览器-四大内核
    python中查看module和function的方法
  • 原文地址:https://www.cnblogs.com/nlovestudy/p/14555195.html
Copyright © 2020-2023  润新知