摘要: 1 let objType = {} 2 'Array Date RegExp Object Error'.split(' ').forEach(e => objType['[object ' + e + ']'] = e.toLowerCase()) 3 function type(obj) { 阅读全文
posted @ 2020-05-07 16:36 yinping 阅读(157) 评论(0) 推荐(0) 编辑
摘要: 1 class MVVM { 2 constructor(options) { 3 this.$options = options; 4 this.$el = options.el; 5 this.$data = options.data; 6 this.observe(this.$data); 7 new Compile(this); 8 } 9 observe(data) { 10 if (! 阅读全文
posted @ 2019-10-21 17:27 yinping 阅读(1444) 评论(0) 推荐(0) 编辑
摘要: 1. 一般div元素的background-color只覆盖到border,而其margin的颜色由外层元素的背景色决定。 2. 当设置了border-box以后,width=border+padding+真实大小 3. 给一个div元素设置div::after以后,after中content的内容 阅读全文
posted @ 2019-08-08 01:01 yinping 阅读(129) 评论(0) 推荐(0) 编辑
摘要: 最近研究了一下element-ui,想着手动实现一下里面的form组件,贴个组件里面的代码 该组件可以细分为三个组件form,formItem以及input组件,首先介绍input组件 任务二是值发生改变的时候通知formItem组件 2. FormItem组件: 任务一实现一个插槽 任务二显示la 阅读全文
posted @ 2019-08-07 17:08 yinping 阅读(391) 评论(0) 推荐(0) 编辑
摘要: 实现一个new操作符 new操作符会返回一个对象,即构造函数当中的this,它可以访问构造函数原型上的属性以及方法 function create(Con, ...args) { this.obj = {};//创建一个空的对象 //将空对象指向构造函数的原型链 Object.setPrototypeOf(obj, Con.prototype); //obj绑定到... 阅读全文
posted @ 2019-07-29 11:55 yinping 阅读(748) 评论(0) 推荐(0) 编辑
摘要: 经典的实现左边固定宽度,右边宽度自适应的几种方法 2.利用position和margin属性 3.flex布局 或者也可以使用flex-grow属性,直接在.right上面申明flow-grow属性为1,.right将自动填充剩余的空间 阅读全文
posted @ 2019-07-29 11:32 yinping 阅读(189) 评论(0) 推荐(0) 编辑
摘要: 水平居中 .son{ width: -moz-fit-content; width: -webkit-fit-content; width:fit-content; margin:0 auto; } 4.绝对定位以及margin-left的负值实现水平居中 5.绝对定位left right同时设置为 阅读全文
posted @ 2019-07-29 10:46 yinping 阅读(1788) 评论(0) 推荐(0) 编辑
摘要: //promise里面只有三个状态,且三个状态的转换形式有两种 //由pending转换为fulfilled,由pending转换为rejected //Promise的构造函数参数是一个函数,函数的参数分别为resolve和reject,两者也均为一个函数 //then中是实际要执行的函数,将传递进来的值传给resolve和reject对应的参数 const PENDING = 'PENDI... 阅读全文
posted @ 2019-07-26 13:26 yinping 阅读(518) 评论(0) 推荐(0) 编辑
摘要: 圣杯布局和双飞翼布局的几点区别: 2.双飞翼布局: 双飞翼布局不再使用position来定位left的位置,直接使用margin-left: -100% 阅读全文
posted @ 2019-07-26 00:12 yinping 阅读(202) 评论(0) 推荐(0) 编辑
摘要: 写在开头: 在css的世界中,一切都是框,所有的框都处于流动的状态 在没有设置margin-bottom的时候,parent的高度会跟随child的内部元素的高度而变化,当设置了margin-bottom为-10px以后,相当于在child的border-bottom边线上10px的位置设置了一条拦 阅读全文
posted @ 2019-07-25 19:55 yinping 阅读(770) 评论(0) 推荐(0) 编辑