前端扫盲,希望早日恢复视力
乱七八糟的前端问题
- css度量单位rem,em,vh,vw,px
- css控制居中
- display:flex
- absolute+transform
- js new发生了什么?
- js精度问题
- 乘法
- vue生命周期
- 给一个数组。找出出现次数最多的三个数
- 压平数组,如何将多维数组变成一维
- concat结合apply
- es6:flat()
- 二叉树的层序遍历
- display与visibility的区别
- HTTP1.0与HTTP2.0
- HTTP/HTTPS的区别
- 手写一个promise.all
- 写一个深拷贝
css度量单位rem,em,vh,vw,px
单位 | 解释 |
---|---|
em | 相对单位,基准点是父节点字体的大小,如果自身定义了font-size按自身来计算(浏览器默认字体是16px),整个页面内1em不是一个固定的值 |
rem | 相对单位,可理解为“root em”,相对根节点html的字体大小来计算,CSS3新增属性 |
vh | 视窗高度,1vh等于视窗高度的1% |
vw | 视窗宽度,1vw等于视窗宽度的1% |
px | 绝对单位,页面按精确像素展示 |
css控制居中
<div class="parent"><button class="child">123</button></div>
display:flex
.parent{display: flex;justify-content: center;align-items: center;width: 100px;height: 100px;border:1px solid red}
absolute+transform
.child{position: absolute; top: 50%;left: 50%; transform: translate(-50%,-50%); }
js new发生了什么?
- 1.创建新对象
- 2.将this指向这个对象
- 3.执行代码 将__proto__指向了prototype
js精度问题
先拿出小数部分,乘为整数,然后除以m即可
乘法
function add(num1, num2){let r1, r2, m;try{r1 = num1.toString().split('.')[1].length}catch(e){r1 = 0}try{r2 = num2.toString().split('.')[1].length}catch(e){r2 = 0}m = Math.pow(10, Math.max(r1, r2))return (num1 * m + num2 * m) / m
}
vue生命周期
- 创建之前
- 挂载之前
- 更新之前
- 更新之后
- 销毁之前
- 销毁完成
- keep-alive缓存功能
给一个数组。找出出现次数最多的三个数
arr=[1,1,1,1,1,2,2,2,2,2,3,3,3,4,5,6,7,7,7,7,7,7,7,7,7,7,7,8]var map=new Map()arr.forEach(element => {if(map.has(element)){var val=map.get(element)map.set(element,val+1)}else{map.set(element,1)}});var newarr=Array.from(map)newarr.sort(function(a,b){return b[1]-a[1]})var ans=[]for(var i=0;i<3;i++){ans.push(newarr[i][0])}console.log(ans);
压平数组,如何将多维数组变成一维
concat结合apply
let arr=[[1,2],[3,4,5],[6]]
console.log([].concat.apply([],arr))
es6:flat()
let arr=[[1,2],[3,4,5],[6]].flat(Infinity)console.log(arr);
二叉树的层序遍历
var levelOrder = function (root) {const arr = []function loop(node, h) {if (!node) returnif (!arr[h]) arr[h] = []arr[h].push(node.val)loop(node.left, h + 1)loop(node.right, h + 1)}loop(root, 0)return arr
}
display与visibility的区别
两者都是隐藏
- 1.display隐藏后,div不会占用位置
- 2.visibility隐藏后,div还会占用位置
HTTP1.0与HTTP2.0
HTTP1.0利用文本与服务器交互,而HTTP2.0的基本协议单位为二进制帧流,每帧都有自己的类型旨在实现不同功能,然后HTTP1.0将继续存在,因此HTTP2.0的二进制帧流需映射到HTTP1.0上以实现向下兼容
HTTP/HTTPS的区别
超文本传输协议HTTP协议被用于在Web浏览器和网站服务器之间传递信息,HTTP协议以明文方式发送内容,不提供任何方式的数据加密,如果攻击者截取了Web浏览器和网站服务器之间的传输报文,就可以直接读懂其中的信息,因此,HTTP协议不适合传输一些敏感信息,比如:信用卡号、密码等支付信息。
为了解决HTTP协议的这一缺陷,需要使用另一种协议:安全套接字层超文本传输协议HTTPS,为了数据传输的安全,HTTPS在HTTP的基础上加入了SSL/TLS协议,SSL/TLS依靠证书来验证服务器的身份,并为浏览器和服务器之间的通信加密。
HTTPS协议是由SSL/TLS+HTTP协议构建的可进行加密传输、身份认证的网络协议,要比http协议安全
HTTPS协议的主要作用可以分为两种:一种是建立一个信息安全通道,来保证数据传输的安全;另一种就是确认网站的真实性。
- 1.https协议需要到CA申请证书,一般免费证书较少,因而需要一定费用
- 2.http是超文本传输协议,信息是铭文传输,https则是具有安全性的ssl/tls加密传输协议
- 3.http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443
- 4.http的连接很简单,是无状态的;https协议是由ssl/tls+http协议构建的可进行加密传输,身份认证的网络协议,比http协议安全
手写一个promise.all
mypromise.all=function(arr){return new Promise((resolve,reject)=>{if(!Array.isArray(arr)){throw new TypeError('must be arr')}var len=arr.lengthvar resolvenum=0var result=[]for(var i=0;i<len;i++){arr[i].then((data)=>{resolvenum++result.push(data)if(resolvenum==len){return resolve(result)}}).catch((error)=>{return reject(error)})}})}
写一个深拷贝
function copy(obj){var newobj={}for(var i in obj){if(typeof obj[i]=="object")newobj[i]=copy(obj[i])elsenewobj[i]=obj[i]}return newobj}
前端扫盲,希望早日恢复视力相关推荐
- 前端扫盲3,希望早日恢复视力
前端扫盲 js基础知识 JS的变量类型 日期问题 怎么改变一个函数的this作用域 apply() call() bind() 字符串问题 原型链 原型链的继承 借用构造函数继承 组合继承 原型式继承 ...
- 双目九视清哺光仪_儿童近视眼300度怎么恢复视力,近视哺光仪对眼睛的影响
儿童近视眼300度怎么恢复视力,近视哺光仪对眼睛的影响 孩子近视眼轴一旦变长是没法缩短,所以真性近视不可逆,这目前是医学难题.比如激光手.晶体植入等提升的都是用眼清晰度,而不是降低近视度数,下面视频告 ...
- 管理员同志,回收站博文希望得到恢复,万分感谢
管理员同志,你好. 今天抽空写了一篇博文,希望分享的,可是由于手误,不熟悉,删至回收站了,自己恢复不了,希望得到恢复,万分感谢.
- 近视?老花眼?恢复视力,就用这一招!
近视?老花眼?恢复视力,就用这一招! 2016-04-18 小编说: 如果家里有小孩近视.老人眼花.玩手机后眼睛疲劳的,都可以用这个方法,不伤眼,帮助恢复视力! 平时习惯 蒸熏眼睛 首先平时习惯是:勤 ...
- 忽视这5件事,2年后你将连手机都看不清了!附恢复视力方法
保护眼睛已非青少年需做事,眼睛是心灵的窗户,每个珍爱自己眼睛的人都要学会爱护和科学地使用自己的眼睛. 以下这5个习惯有的人就要小心了,会严重伤害眼睛,不需要很久,2年的时间足以看出伤害- 1 经常滴眼 ...
- 恢复视力方法(仅供参考)
1.远方凝视: 找一处10米以外的草地或绿树:绿色由于波长较短,成像在视网膜之前,促使眼部调节放松.眼睫状肌松弛,减轻眼疲劳.不要眯眼,也不要总眨眼,排除杂念.集中精力.全神贯注的凝视25秒,辨认草叶 ...
- 近视眼怎么慢慢恢复视力 近视眼怎么恢复视力自然恢复
近视眼目前是认为近距离工作过久所导致的,使近视眼自然恢复,我们可以采取一些眼部的运动: 1,眺望远方 我们都知道,近视给我们的生活带来了许多不便和麻烦.如果你每天都戴一双眼镜,不仅会影响外观,还会对我 ...
- 大家分享——恢复视力方法
<script type="text/javascript"> </script> <script src="http://pagead2. ...
- 600度近视眼恢复方法_高度近视600度如何恢复视力?有这三大办法可对付!
原标题:高度近视600度如何恢复视力?有这三大办法可对付! 近视其实有3个门槛,很多人都不甚了解. 近视度数低于300度,为轻度近视: 近视度数高于300度,低于600度,为中度近视: 近视度数高于6 ...
最新文章
- 基于cookie的SSO单点登录系统
- 建立行政效果公布体制
- windows2003中mssql连接的NT AUTHORITY\NETWORK SERVICE登录失败的问题
- java将图片变成圆角_android图片处理之让图片变成圆形
- dedecms右侧悬浮_织梦dedecms网站上添加漂浮广告
- 解读设计模式----策略模式(Strategy Pattern)
- ajax 动态加载的内容,相应的js也要在回调里加载
- SqlServer数据库同步方案详解
- FPGA实现VGA显示(五)——————配置ROM测试及图片显示(b)
- div关闭怎么写 html,大神你好,请问怎么在以下代码的div中添加一个关闭按钮?...
- 【调参】Cyclic Learning Rates和One Cycle Policy-Keras
- ThinkPHP5捕获致命错误流程
- 代码实现抖音时钟罗盘
- 柴静十年成长的个人告白 - 读《看见》
- 计算机与信息学院迎新标语,学院迎新标语横幅
- 利用js写一个函数,实现翻转任意数组。 写一个函数,实现对数字数组的排序。
- 试题 算法训练 藏匿的刺客
- 将ShellCode注入进程内存
- php redis incr过期时间,Redis 利用 incr 和 expire 来限流, 并发导致过期时间失效问题...
- discuz论坛部署及常见问题处理
热门文章
- 读书笔记:《不要挑战人性:史上20个经典人性实验》
- python-关于一个二维列表,按照给定一个顺序列表来进行排序(个人总结,不喜勿喷)
- PS网页设计教程——小贴士:五步在PS中创建倒计时数字牌
- 芋道源码的周八(2018.01.20)
- 高防IP可以抵御哪些恶意攻击?
- Mysql外键设置中的CASCADE、NO ACTION、RESTRICT、SET NULL、Set DEFAULT
- CoordinatorLayout+ViewPager+Behavior仿喜马拉雅FM首页
- 0. 嵌入式入门学习路线
- 3D让工厂生产数据更智慧
- Angular4.x+Swiper3制作公告栏和轮播图(引用第三方库)