美文网首页
js函数对象和回调

js函数对象和回调

作者: 小吉头 | 来源:发表于2020-11-01 10:54 被阅读0次

    函数对象和实例对象

    函数对象:将函数作为对象使用时,简称函数对象
    实例对象:new函数产生的对象,简单对象

    ()的左边是函数
    . 的左边是对象

        <script>
            function Fn(){ //Fn是函数
    
            }
            const fn = new Fn() //此时Fn是构造函数,fn是示例对象(简称为对象)
            console.log(Fn.prototype) //Fn是函数对象
            Fn.call({}) //Fn是函数对象
            $('#test') //jQuery函数
            $.get('/test') //jQuery函数对象
        </script>
    

    两种类型的回调函数

    什么是回调函数

    1、函数是自己定义的
    2、自己不会主动调用该函数,但最终会执行

    1、同步回调

    回调函数不会放到队列

        <script>
            const arr = [1,2,3]
            arr.forEach(item => {
                console.log(item)
            })
            console.log('forEach()之后')
        </script>
    
    >>>1
    >>>2
    >>>3
    >>>forEach()之后
    

    2、异步回调

    回调函数放到队列,将来执行

        <script>
            setTimeout(() => {
                console.log('callback')
            },0)
            console.log('setTimeout()之后')
        </script>
    
    >>>setTimeout()之后
    >>>callback
    

    怎么判断同步回调还是异步回调函数?
    如上面示例,在启动了回调函数后面console.log(xxx)
    启动回调函数->回调函数执行完成->console.log(xxx) 说明是同步回调
    启动回调函数->console.log(xxx)->回调函数执行完成 说明是异步回调,先启动了回调函数,不会立刻执行,启动不代表立刻执行

    相关文章

      网友评论

          本文标题:js函数对象和回调

          本文链接:https://www.haomeiwen.com/subject/dlqnpktx.html