- 博客(7)
- 收藏
- 关注
原创 从输入URL到页面加载发生了什么(三次握手,页面渲染,四次挥手)
本来只是想看一下前端的渲染和重绘回流,研究一下加载优化,然后就想着顺便过一下页面渲染前的步骤,发现涉及的东西还挺多的,就总结一下吧,下一章聊加载优化大致步骤1、浏览器的地址栏输入URL并按下回车。2、浏览器查找当前URL是否存在缓存,并比较缓存是否过期。3、DNS解析URL对应的IP。4、根据IP建立TCP连接(三次握手)。5、HTTP发起请求。6、服务器处理请求,浏览器接收HTTP响应。7、渲染页面,构建DOM树。8、关闭TCP连接(四次挥手)。 先说URL,举个例子,常见的地址如
2020-08-13 18:22:53
939
1
原创 攻略正则,完善自身技能点
学习正则前,我们先过一遍常用的正则方法前端用到正则的方法共六种,分为两类RegExp对象方法exce()返回值: 返回一个数组,存放匹配的结果。如果未找到匹配,则返回值为 null。返回值的其他属性,index: 第一个匹配的字符在原字符串中的位置input: 原字符串groups: 表示当初命名时分组匹配到的分组对象使用:表达式.exce(对象)特点检测规则没有分组(reg不带括号),无论是否全局搜索(g),只返回一个数值let str = 'fsetg23 ger2f3';
2020-07-30 19:51:04
172
原创 JS基础——数据类型(特点,检测,转换)
数据类型(8种)ES5: Number,String,Boolean,undefined、Object、nullES6: Symbol 每个从Symbol()返回的symbol值都是唯一的 ,表示独一无二的值谷歌67版本中还出现了一种 BigInt。是指安全存储、操作大整数。基本类型除Object 以外的数据类型特点按值访问的 ,可以操作保存在变量中的实际的值基本数据类型的值是不可变的,任何方法都无法改变一个基本数据类型的值为什么基本数据类型不可变?堆和栈程序运行的时候,需要内存
2020-07-16 15:55:41
211
原创 call,apply,bind用法和区别
作用:改变函数运行时this的指向bind和apply,call的区别call和apply改变了函数的this上下文后便执行该函数,而bind则是返回改变了上下文后的一个函数,不会直接调用。call、apply的区别他们俩之间的差别在于参数的区别,call和aplly的第一个参数都是要改变上下文的对象,而call从第二个参数开始以参数列表的形式展现,apply则是把除了改变上下文对象的参数放在一个数组里面作为它的第二个参数fn.call(obj, arg1, arg2, arg3...);fn.
2020-07-13 11:08:19
185
原创 ios 软键盘弹出, 页面整体上移问题
问题描述对于 ios 系统,输入框输入内容,软键盘弹出,页面内容整体上移,但是软键盘收起,页面内容不会自动回到原本的位置,必须手动下拉才会恢复解决办法handleBlur(){ let u = navigator.userAgent; let isIOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); if (isIOS) { setTimeout(() => { window.scroll(0, 0) },
2020-05-13 11:28:29
3432
原创 关于Redux
关于Redux跟着网上视频做了几个项目,对于redux,还是有些懵懵懂懂,不过好歹有个模糊概念了,推荐这篇文章,看完后恍然大悟https://github.com/Advanced-Interview-Question/front-end-interview/blob/master/docs/guide/redux.md...
2020-05-09 10:07:19
240
原创 react脚手架修改默认配置
react-create-app修改默认配置前端开发过程中,总会因为各种各样的原因,需要修改webpack中的一些配置,比如引入第三方框架,而yarn eject是不可逆的操作,对于对webpack不熟悉的程序员,修改起来是很麻烦的。接下来,换一种方法修改配置,比如引入antd-mobile首先yarn add react-app-rewired customize-cra -D...
2019-10-23 17:07:39
1037
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人