获得徽章 0
- script标签不加defer async属性时下载和执行都会阻塞UI绘制;
defer 标签(中文译为推迟):下载和UI绘制并行(下载不会阻塞),执行推迟到
所有元素解析完成之后,DOMContentLoaded 事件触发之前
async 标签 (同步):下载和UI绘制并行(下载不会阻塞),下载完之后立刻执行(会阻塞UI绘制)展开赞过评论1 - new A() 操作符做的事情 1.创建一个对象 {} 2.设置原型链 {}._proto_ = A.prototype 3.以创建出来的这个对象为上下文 执行 A函数 4.判断第三步执行的A函数有没有返回值 如果是基本类型就直接忽略,返回创建的这个对象;如果是非基本类型就返回执行的结果。我觉得前面3步都没有什么问题,这个第四点判断值类型返回真的有点糟粕;即如果我的构造函数也返回了一个对象{},那么我new 创建出来的就只是这个构造函数执行后返回的{}完全体现不出这个操作的意义。展开评论点赞
- commonjs 里的 exports 是 module.exports 的一个引用,最后到处的依然是这个引用指向的对象,因此如果你给他重新赋值了将不会改变最后的导出,所以一般使用exports导出时我们都是通过exports.a 修改属性的方式评论点赞
- npm包版本号前面的符号意思: 1.以~开头是,将会匹配 1.2.x,假设你当前声明了依赖~1.2.3,但是目标版本经过多次迭代以后到了1.3.3,那么当你再次安装这个包时将会装的是以1.2开头的最新版本而不会是1.3.X; 2.当你的依赖以^开头时,即^1.2.3那么再次安装时则会拉取以1开头的这个大版本号里最新的依赖即1.3.3。 在上面两条规则之下,还如果想要升级到比如2.0,那就只能手动更改版本号了。展开赞过13
- input 光标的大小在ios和安卓某些机型上是跟着line-height走的,如果我们写了line-height = heiglt 就会造成这个光标比实际文字大很多,要解决这个问题 只需要将line-height设置成和font-size一样大小 然后在父容器利用flex来做居中处理赞过评论1