美文网首页
js apply和 call 的使用

js apply和 call 的使用

作者: 云龙789 | 来源:发表于2019-02-21 19:36 被阅读3次
    image.png
    
    <script>
        let person = {
            name: 'heool world',
        }
        let fullName = function () {
            return this.name
        }
        let name = fullName.apply(person)
        console.log(name);
    
        let person1 = {
            name: 'heool world',
        }
        let fullName1 = function (age, test) {
            console.log(typeof age)
            return this.name + age + test
        }
        // applay  只能传递数组
        let name1 = fullName1.apply(person1, [12, 88])
        console.log(name1);
        // 这种方式是不对的
        // let name5 = fullName1.apply(person1,12)
        // console.log(name5);
    
        //  call 方法传递的参数如果只有一个参数,则传递数组,会当成对象来打印
        let name2 = fullName1.call(person1, 12, 88)
        console.log(name2);
    
        let name3 = fullName1.call(person1, [12, 88], 33)
        console.log(name3);
        // call 方法不能传递对象
    </script>
    

    apply 和 call 的第一个参数都是对象,第二个参数起是调用函数的参数。注意,是函数调用apply

    相关文章

      网友评论

          本文标题:js apply和 call 的使用

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