- 博客(17)
- 收藏
- 关注
原创 2020-10-24
类数组对象转换为数组假如domList是一个DOM集合。(1) Array.from()方法let list = Array.from(domList);(2) …展开操作符let list = [...domList];(3) Array.prototype.slice.call()方法let list = Array.prototype.slice.call(domList);(4) Array.prototype.forEach.call()方法//直接对domList集合进行
2020-10-24 19:52:17
162
原创 关于图片的预加载等
图片加载:图片是需要消耗大量系统资源的,图片多,服务器的I/O负载就大;很多时候图片格式等都不是我们能够决定的。一、CDN托管第一首选,嗯,省事。二、图片压缩5M以上大小的图片,加载时间略长,可改为渐进式图片jpeg(逐步清晰),或先加载一张压缩后的图片,异步加载压缩前的图片进行替换。三、BASE64适合小图片,大图片会增大css体积,不利于本地缓存。可以使用canvas来渲染base64格式的图片,css、svg、canvas或iconfont等。四、懒加载按需加载,先加载部分图片,当
2020-10-24 18:53:34
161
转载 编程语言圣经
第0x00天上古时期,人类主要使用二进制编程,人类需要记住数据在内存的地址,然后才能进行读写操作。比如取出地址为0x3A6F27处的值, 以及地址为0x3A6F39处的值,然后把两个值相加起来。冗长的、难以记忆的地址让人类痛苦不堪。仁慈的上帝要解救人类于苦难之中,他说:要有变量 ! 用变量表示内存中的值。人类不解:“那地址呢?”上帝送给人类一个叫编译器的宝贝:“不用担心,编译器把背后的脏活累活都干了,这样代码写起来就简单多了!”x + y人类非常高兴。第0x01天内存中有一段数据,
2020-08-24 16:33:34
274
转载 函数2
函数(下)作用域(重点)什么是作用域,就是一个变量可以生效的范围变量不是在所有地方都可以使用的,而这个变量的使用范围就是作用域全局作用域全局作用域是最大的作用域在全局作用域中定义的变量可以在任何地方使用页面打开的时候,浏览器会自动给我们生成一个全局作用域 window这个作用域会一直存在,直到页面关闭就销毁了// 下面两个变量都是存在在全局作用域下面的,都是可以在任意地方使用的...
2020-08-24 16:32:28
137
转载 前端面试题:JS中的let和var的区别
前端面试题:JS中的let和var的区别最近很多前端的朋友去面试被问到let和var的区别,其实阮一峰老师的ES6中已经很详细介绍了let的用法和var的区别。我简单总结一下,以便各位以后面试中使用。ES6 新增了let命令,用来声明局部变量。它的用法类似于var,但是所声明的变量,只在let命令所在的代码块内有效,而且有暂时性死区的约束。先看个var的常见变量提升的面试题目:题目1:v...
2020-08-24 16:32:03
97
原创 一篇文章了解Cookie与WebStorage 前端
任何数据存储在cookie,storage中都必须使用字符串存储。一、Cookiecookie 是本地计算机的临时存储,实际上就是一些信息,这些信息以文件的形式存储在客户端计算机上。当用户访问了某个网站,可以通过cookie向访问者电脑上存储数据。cookie不单单用于用户名和密码,我们平时所浏览的数据关键词也会被记录,后面刷新和打开时,服务器就会根据你浏览的信息关键词推送消息。(用户信息泄...
2020-04-28 22:39:03
147
原创 JS_ES6异步处理语法promise
PromisePromise 是一个对象、是一个构造函数,可以生成一个Promise实例,是一个异步过程,它可以将异步操作以同步操作的流程表达出来。实例一:var p=new Promise(function(resolve,reject){ var i=3; if(i>2){ resolve(); }else{ reject()...
2020-04-20 21:40:14
142
原创 JS文件同步异步加载
加载js文件单线程:在JS引擎中负责解释和执行JavaScript代码的线程只有一个,一般称它为主线程。但是实际上还存在其他的线程,可以称之为工作线程。同步:在主线程上排队执行的任务,只有前一个任务执行完毕,才能执行后一个任务。异步:不进入主线程、而进入"任务队列"(task queue)的任务,只有"任务队列"通知主线程,某个异步任务可以执行了,该任务才会进入主线程执行。如果在函数A返回...
2020-04-20 19:05:35
323
原创 JS轮播图的实例
imgCon容器用来放置图片,两张图片的宽度,用来做轮播效果,carousel容器用来显示图片,做溢出隐藏,imgCon容器有左或右两个运动方向,将需要放置的图片根据方向放在当前显示的图片的前面或者后面,将整个容器向左或者向右移动,在完成后将上一次的图片删除。dotList 放置小圆点列表bnList 放置左右按钮的数组imgList 放置所有图片的数组pos是确定当前是第几个图片d...
2020-04-19 21:22:37
151
原创 正则表达式相关表单验证
重复匹配1、 * 有或者没有,有多少个都可以,相当于{0,} 。2、 + 有至少一个以上,相当于{1,}。3、 ? 有或者没有都行,最多1个相当于{0,1}。例如:/ca{0,}t/ === /ca*t/ /ca{1,}t/ === /ca+t/ /ca{0,1}t/ === /ca?t/ ...
2020-04-13 08:31:39
128
原创 JS事件基础 事件流
一、事件基础添加侦听、回调函数、事件抛发事件的侦听需要在抛发之前定义,事件类型有分为系统事件与自定义事件,系统事件由系统自动抛发,不需要我们写代码抛发,而自定义事件是需要的。1.添加侦听element.addEventListener("事件类型",事件回调函数);这是IE8及以上的写法。给DOM元素添加一个事件侦听(监听),只能收到对应事件类型的消息,当收到这个消息,执行事件回调函数。...
2020-04-06 12:07:20
451
原创 JS隐式转换==与 ! 运算符
js是弱类型语言,运算时若两边数据类型不一样会自动转换类型,写代码时不小心就就掉坑里了。看下面面试题:console.log([]==[]);//falseconsole.log(![]==[]);//trueconsole.log(![]==![]);//trueconsole.log(![]==false);//trueconsole.log([]==true);//falsec...
2020-03-29 22:04:17
176
原创 js基本数据类型转换
js数据类型转换,总结一波,加深印象。类型转换分强制转换和隐式转换,而js属于弱类型语句,在遇到数据类型不同的情况时,会自动转换数据类型,也就是隐式的转换类型。js基本数据类型包括:字符串、数字、布尔值、undefined、null、NaN。而我们检测变量类型typeof需要注意的是:null的类型是object,若未定义就是undefined;先说下强制转换...
2020-03-22 14:22:00
268
原创 CSS垂直居中的几种方法
方法有很多,这里简述四种。1.利用vertical-align进行居中。2.用定位。3.用弹性盒。4.用网格布局。一、vertical-align给要居中元素添加标尺;或转为table-cell类型。用标尺:<div class="wrap"> <div class="box">Hello World!</div><span><...
2020-03-15 16:52:45
150
原创 弹性盒模型
盒模型是css布局的基石,它规定了网页元素如何显示以及元素间相互关系。css定义所有的元素都可以拥有像盒子一样的外形和平面空间,通过display来改变元素遵循什么样的盒模型。常见的盒模型:标准盒模型、怪异盒模型、这周又了解到了弹性盒模型。总所周知,基本每个元素都有margin、border、padding、content四个属性。标准盒模型所占平面空间大小:width/height(con...
2020-03-09 19:34:25
185
原创 CSSBFC规则的应用自适应两栏布局
两栏布局是写页面时经常用到的,要想实现两栏布局,就需要明白BFC规则,Block formatting context,直译为“块级格式化上下文”,可以简单的理解它为一个独立的区域,把区域内部元素与外部元素区分开,两者互不干扰。它的规则:1.内部元素会在垂直方向一个接一个放置。2.属于同一个BFC的两个元素上下margin会重叠。3.独立的BFC的区域不会与浮动元素重叠。4.BFC就是页...
2020-03-01 08:34:59
354
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人