2020年3月22日

es6手写一个call

摘要: Function.prototype.selfCall = function(ctx, ...args) { if(typeof this !== 'function') { throw new Error('you must use call with function') } ctx = ctx 阅读全文

posted @ 2020-03-22 13:16 AI架构师 阅读(310) 评论(0) 推荐(0)

同学给我来个手写的new吧

摘要: 1.手写一个new 首先看看new怎么用 function Person(name){ this.name = name } Person.prototype.eat = function() { console.log("Eating") } var qd = new Person('qd') c 阅读全文

posted @ 2020-03-22 13:15 AI架构师 阅读(406) 评论(0) 推荐(0)

this综合篇

摘要: var name = 'window' var person1 = { name: 'person1', foo1: function () { console.log(this.name) }, foo2: () => console.log(this.name), foo3: function 阅读全文

posted @ 2020-03-22 13:14 AI架构师 阅读(137) 评论(0) 推荐(0)

this绑定番外篇之箭头函数绑定

摘要: 我们在前几章说this永远指向最后调用它的那个对象。 但对于箭头函数来说不是的,它里面的this是由外层作用域来决定的,且指向函数定义时的this而非执行时。 它里面的this是由外层作用域来决定的怎么理解呢?首先箭头函数中没有 this 绑定,必须通过查找作用域链来决定其值,如果箭头函数被非箭头函 阅读全文

posted @ 2020-03-22 13:12 AI架构师 阅读(289) 评论(0) 推荐(0)

vue中引入公用过滤器?

摘要: 比如我们封装一个金钱的过滤器: 不废话,直接上代码 在main.js平级新建filter文件夹,里面新建index.js和money.js index.js import { moneyP } from './money' export default moneyP; 注意这里不要用module.e 阅读全文

posted @ 2020-03-22 13:11 AI架构师 阅读(1309) 评论(0) 推荐(0)

this详解下

摘要: 3.显示绑定: (使用某些方法,改变函数内部的this的指向。) 通过call(),apply()或bind方法直接指定this绑定的对象,如foo.call(obj). 注意: 使用.call()或者.apply执行的函数是会直接执行的。 bind()是创建一个新的函数。需要手动调用才会执行。 . 阅读全文

posted @ 2020-03-22 13:09 AI架构师 阅读(145) 评论(0) 推荐(0)

012天this详解上

摘要: 我们知道,this对象在运行时基于函数的执行环境绑定的:在全局函数中,this等于window,而当this某个对象的方法调用时,this等于那个对象。 1. this的绑定形式 1.默认绑定 2.隐式绑定 3.显示绑定 4.英绑定 5.new绑定 2.五种绑定的优先级 默认绑定 < 隐式绑定 < 阅读全文

posted @ 2020-03-22 13:08 AI架构师 阅读(186) 评论(0) 推荐(0)

011天之跨域资源共享CORS

摘要: 通过XHR实现Ajax通信的一个主要限制,来源于跨域安全策略,默认情况下XHR对象只能访问与包含它的页面位于同一个域中的资源。这种安全策略可以预防某些恶意行为。但是,实现合理的跨域请求对于开发某些浏览器的应用也是非常important的。 CORS(Cross-Origin Resource Sha 阅读全文

posted @ 2020-03-22 13:07 AI架构师 阅读(141) 评论(0) 推荐(0)

010天JSON.stringify()详解

摘要: JSON.stringify()除了要序列化的js对象外,还可以接受另外两个参数,这两个参数用于指定以不同的方式序列化js对象。第一个参数是个过滤器,可以是一个数组,也可以是一个函数;第二个参数是一个选项,表示是否在JSON字符串中保留缩紧。单独或组合使用这两个参数,可以更全面深入地控制JSON的序 阅读全文

posted @ 2020-03-22 13:06 AI架构师 阅读(327) 评论(0) 推荐(0)

009天之跨浏览器的事件处理程序

摘要: 为了以️跨浏览器方式处理事件,我们可以使用一些可以隔离浏览器差异的js库。由于业务需求,有时候我们需要写一些我们自己封装一些兼容代码。 比如创建一个addHandler(),它的职责是视情况分别使用DOM0级方法,DOM2级方法或IE方法来添加事件。然后addHandler()方法接受三个参数:要操 阅读全文

posted @ 2020-03-22 13:05 AI架构师 阅读(201) 评论(0) 推荐(0)

导航

  • !