- 博客(15)
- 收藏
- 关注
原创 ES6---new Set
ES6---new Setnew Set(),用来去重数组。let arr = [1, 2, 2, 3];let set = new Set(arr);let newArr = Array.from(set);console.log(newArr); // [1, 2, 3]Set类似于数组,区别在于它所有的成员都是唯一的,不能有重复的值Set对象方法方法 描述 add 添加某个值,返回 Set 对象本身 clear 删除所有的键/值对,没.
2020-12-14 21:56:28 422
原创 浏览器缓存机制---强制缓存、协商缓存
浏览器缓存机制---强制缓存、协商缓存一、概述浏览器的缓存机制也就是我们说的HTTP缓存机制,其机制是根据HTTP报文的缓存标识进行的,所以在分析浏览器缓存机制之前,我们先使用图文简单介绍一下HTTP报文。HTTP报文分为两种:1.1 HTTP请求(Request)报文,报文格式为:请求行 – HTTP头(通用信息头,请求头,实体头) – 请求报文主体(只有POST才有报文主体),如下图1.2 HTTP响应(Response)报文,报文格式为:状态行 – HTTP头(通用信息头,响应头,
2020-12-14 12:00:39 860
原创 数组扁平化的几种方法
数组扁平化的几种方法数组扁平化:将一个多维数组转换为一个一维数组的过程就是数组的扁平化。arr = [ 1, [ 2, 3, [ 3, 8 ] ], [ 2, 5 ] ] => [ 1, 2, 3, 3, 8, 2, 5 ]1、ES6中的方法:flat方法。// 默认展开一层数组arr = arr.flat();console.log(arr); // [1,2,3,[3,8],2,5]// 使用 Infinity 作为深度,可展开任意深度的嵌套数组arr =...
2021-02-06 15:33:56 353
原创 ES6中的箭头函数和普通函数有什么区别?
ES6中的箭头函数和普通函数有什么区别?1、普通函数的 this 永远指向调用它的那个对象(谁调用,this 就指向谁)箭头函数没自己的 this,它的 this 永远指向其定义环境,任何方法都不能改变其指向,如 call()、bind()、apply()等。(正因为它没有 this,所以也就不能用作构造函数,也没有原型对象)。2、箭头函数不能当做构造函数,也就是说,不能使用 new 命令,否则会报错。3、箭头函数没有原型属性。4、箭头函数不能使用 arguments 对象,该对象在函数
2021-02-05 11:37:00 1706
原创 js中数组、数字、字符串之间的转换
js中数组、数字、字符串之间的转换1、字符串转数字纯数字转换1)字符串在运算操作中会被当做数字类型来处理var s = "3265";console.log(s *= 1); // 32652)字符前面加“+”var s = "3265";console.log(+s); // 32653)string的两个转换函数,只对string有效var s = "3265";console.log(parseInt(s)); // 3265var s = "32
2021-01-07 22:34:19 3683
原创 元素水平垂直居中的方式
元素水平垂直居中的方式HTML:<body> <div class="father"> <div class="son"></div> </div> <div class="oneline">单行文本居中</div></body>CSS:.father { width: 600px; height: 600px; border: 1px solid
2021-01-02 00:06:10 185 2
原创 js中判断数组的方法
js中判断数组的方法1、数组自带的 isArray() 方法(ES6新增)let arr = [];console.log(Array.isArray(arr)); // true2、instanceoflet arr = [];console.log(arr instanceof Array); // true3、constructorlet arr = [];console.log(arr.constructor == Array); // true4、__pr
2021-01-01 16:54:33 451
原创 OSI七层和TCP/IP五层网络模型
OSI七层和TCP/IP五层网络模型1、OSI七层网络模型OSI中的层、功能、TCP/IP协议族应用层: 文件传输,电子邮件,文件服务,虚拟终端 TFTP,HTTP,SNMP,FTP,SMTP,DNS,Telnet表示层: 数据格式化,代码转换,数据加密 没有协议会话层: 解除或建立与别的接点的联系 没有协议传输层: 提供端对端的接口 TCP,UDP网络层: 为数据包选择路由 IP,ICMP,RIP,OSPF,BGP,IGMP数据链路层: 传输有地址的帧以及错误检测功能 SL
2020-12-22 12:00:05 148
原创 cookie、localStorage、sessionStorage、session的区别
cookie、localStorage、sessionStorage、session的区别 cookie localStorage sessionStorage session k-v存储、同域名可用 存储位置 客户端 服务器 特点 随请求头每次提交 不随请求头提交,可长时间保存 不随请求头提交,页面关闭既失效 安全 跨页 可跨页,不可跨域 不可跨页,不可跨域 可跨页,不可跨域 ...
2020-12-14 12:01:43 86
原创 TCP和UDP的不同点
TCP和UDP的区别(1)TCP是面向连接的;UDP是无连接的,即发送数据前不需要先建立连接。(2)TCP提供可靠的服务,也就是说,通过TCP连接传送的数据是无差错、不丢失、不重复的,并且是按序到达;UDP是尽最大努力交付,不保证数据的可靠交付。因为TCP是面向连接的,提供可靠交付,因此适合大量数据的交换。(3)TCP是面向字节流的;UDP是面向报文的,并且网络出现拥塞不会使得发送速率降低,因此会出现丢包。(4)TCP只能是1对1的;UDP支持1对1,1对多。(5)TCP的首部较大,为2
2020-12-12 21:43:59 349
原创 求出数组最大值的方法
求出数组最大值的几种方法1、排序法使用数组的sort()方法对数组进行排序,得到一个从小到大的有序数组,数组的第一个和最后一个元素就是我们要找的最小值和最大值:var arr = [3, 5, 1, 4, 2]arr.sort(function(a, b) { return a - b;})console.log(arr) // [1, 2, 3, 4, 5]2、使用ES6的扩展符var arr = [3, 5, 1, 4, 2]console.log(Math.
2020-12-12 21:41:20 23120 1
原创 在页面上隐藏元素的方法
在页面上隐藏元素的方法有哪些?<div class = "box"></div>一、全局属性 hidden<div class = "box" hidden></div>这个方法隐藏元素不占位置。二、display:none这个属性会让元素在页面中消失,不占据实际的空间。三、visible: hidden.box { visible: hidden;}visible 属性规定元素是否可见,即使不可见的元素也.
2020-12-05 23:36:04 1043
原创 CSS引入方式及区别
页面导入样式时,使用link和@import有什么区别?1、从属关系的区别:link属于HTML标签,而@import是CSS提供的语法规则,link除了加载CSS,还可以定义RSS,定义rel连接属性等;@import就只能加载CSS。2、加载顺序的区别:link引入的样式在页面加载的同时加载;@import引入的样式需等页面加载完成后再加载。3、兼容性区别:link是HTML标签,所以没有兼容性问题;@import不兼容IE5以下。4、DOM可控性区别:link可以通过js操作DOM 动
2020-12-04 17:26:45 870
原创 CSS常用布局----圣杯布局和双飞翼布局
作用:圣杯布局和双飞翼布局解决的问题是一样的,就是两边顶宽,中间自适应的三栏布局,中间栏要在放在文档流前面以优先渲染。 区别:圣杯布局,为了中间div内容不被遮挡,将中间div设置了左右padding-left和padding-right后,将左右两个div用相对布局position: relative并分别配合right和left属性,以便左右两栏div移动后不遮挡中间div。双飞翼布局,为了中间div内容不被遮挡,直接在中间div内部创建子div用于放置内容,在该子div里用margin-left
2020-12-04 13:41:49 143
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人