码迷,mamicode.com
首页 > 其他好文 > 详细

手写call

时间:2020-12-18 12:55:04      阅读:3      评论:0      收藏:0      [点我收藏+]

标签:ons   name   prope   class   cti   code   ret   OLE   bind   

let obj={
        name:‘金毛‘
    }
    function test(){
        console.log(123,this)
    }
    test.call(obj,‘123‘)
    //手写
    Function.prototype.myCall=function(thisObj,arr){
        let Fn = this
        let s =Symbol(‘func‘)
        let s2 =Symbol(‘func‘)
        let del =Object.getOwnPropertySymbols(thisObj)
        delete thisObj[del[0]]
        thisObj[s]=Fn
        thisObj[s](arr)
    }//手写call
let obj={
        name:‘金毛‘
    }
    function test(){
        console.log(123,this)
    }
    test.call(obj,‘123‘)
    //手写
    Function.prototype.myCall=function(thisObj,arr){
        let Fn = this
        return function (){
            let s =Symbol(‘func‘)
            let s2 =Symbol(‘func‘)
            let del =Object.getOwnPropertySymbols(thisObj)
            delete thisObj[del[0]]
            thisObj[s]=Fn
            thisObj[s](arr)
        }
    }//bind

 

手写call

标签:ons   name   prope   class   cti   code   ret   OLE   bind   

原文地址:https://www.cnblogs.com/menggege/p/14129709.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!