#yyds干货盘点#【js学习笔记二十八】手写bind

简介: #yyds干货盘点#【js学习笔记二十八】手写bind

前言

我是歌谣 我有个兄弟 巅峰的时候排名c站总榜19 叫前端小歌谣 曾经我花了三年的时间创作了他 现在我要用五年的时间超越他 今天又是接近兄弟的一天人生难免坎坷 大不了从头再来 歌谣的意志是永恒的 放弃很容易 但是坚持一定很酷


导语

手写bind

图片.png

代码部分

Function.prototype.mybind = function (target) {
      //target:改变返回函数执行时的this指向
      var obj = target || window;
      console.log(arguments,"arguments")
      var args = [].slice.call(arguments, 1); //获取bind时传入的绑定实参
      var args1 = [].slice.call(arguments, 0); //获取bind时传入的绑定实参
      console.log(args,"args")
      console.log(args1,"args1")
      var self = this; //要bind的函数
      console.log(self,"self")
      var _fn = function () {
        var _args = [].slice.call(arguments, 0); //新函数执行时传递的实际参数
        console.log(_args,"_args")
        return self.apply(obj, args.concat(_args));
      }
      return _fn
    }
    var name = 'fangfang';
    var obj = {
      name: 'geyao'
    };
    function fn(a, b, c) {
      console.log(a + b + c + this.name);
      return a + b + c + this.name
    };
    fn.mybind(obj,"我的","老婆","是")(); // 我的老婆是geyao
相关文章
|
3天前
|
JavaScript 前端开发
javascript中的bind
javascript中的bind
|
4天前
|
前端开发 JavaScript API
JavaScript学习笔记(一)promise与async
JavaScript学习笔记(一)promise与async
|
2月前
|
存储 JavaScript
【ES6系列第二篇】适用JS初学者的Set对象和Map对象学习笔记
【ES6系列第二篇】适用JS初学者的Set对象和Map对象学习笔记
17 0
|
2月前
|
前端开发 JavaScript Java
【面试题】JavaScript 中 call()、apply()、bind() 的用法
【面试题】JavaScript 中 call()、apply()、bind() 的用法
|
2月前
|
前端开发 JavaScript
【面试题】 JavaScript 中 call()、apply()、bind() 的用法
【面试题】 JavaScript 中 call()、apply()、bind() 的用法
|
2月前
|
资源调度 JavaScript 前端开发
js高级进价 - 手写bind
js高级进价 - 手写bind
|
4月前
|
JavaScript 前端开发
javascript函数的call、apply和bind的原理及作用详解
javascript函数的 call、apply和bind 本质是用来实现继承的,专业点说法就是改变函数体内部 this 的指向,当一个对象没有某个功能时,就可以用这3个来从有相关功能的对象里借用过来
32 0
|
4月前
|
前端开发 JavaScript Python
javascript入门学习笔记打卡(2)
javascript入门学习笔记打卡(2)
18 0
|
6月前
|
JavaScript
JS 学习笔记一 (基础)
JS 学习笔记一 (基础)
30 0
|
定位技术
arcgisapi for javascript4.0学习笔记4.0新特性
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/gisdoer/article/details/51842547 arcgisapi for javascript4.
743 0

相关产品

  • 云迁移中心