weekly 201-03-28

学东西要知其然而且知其所以然

别的,实践出来的感悟和他人分享的感悟是不一样的

  • [ ] 垂直居中规划
  • [x] 浏览器缓存
  • [ ] tcp衔接
  • [ ] 状况码 301 302 307
  • [x] bind要领完成
  • [x] new关键字完成
  • [ ] 最长大众子序列
  • [ ] react中 pureComponent hooks
  • [x] 箭头函数
  • [ ] window.onload() && $(document).ready()
  1. 浏览器缓存有一个注重点
Etag优先级比LastModified高, lastmodified末了修正时刻只能准确到秒,假如1s内屡次修正,捕获不到
别的,有些资本内容没有变,但lastmodified变了,etag能够防备不运用缓存
  1. bind要领简朴完成
Function.prototype.bind = function() {
    var self = this;
    var o = Array.prototype.shift.call(arguments);
    var arg1 = Array.prototype.slice.call(arguments);
    return function (...args) {
        return self.apply(o, arg1.concat([...args]));
    }
}
  1. 箭头函数的一些特性总结
let play = () => { consoel.log(this) }
1. 箭头函数没有原型,所以箭头函数没有this 
play.prototype == undefined
2. 箭头函数的this指向定义时刻地点外层this指向,跟运用位置没有关系
this === window
3. 箭头函数this指向window时,没有arguments
let bar = () => { console.log(arguments) }// 报错 
箭头函数的this指向一般函数时,它的arguments可继承
function bar() {
    let foo = () => {
        console.log(arguments)
    }    
    foo() // 能够打印
}
                
var name = 'b';
var o = {
    name: 'a',
    key : () => {
        console.log(this.name) // b
    }
}

var o2 = {
    name: 'a',
    key : function() { console.log(this.name)} // a
}

4. 箭头函数不能运用new 关键字 由于没有constructor

    原文作者:ilvseyinfu
    原文地址: https://segmentfault.com/a/1190000018691347
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞