2018年6月3日

js的垃圾收集机制以及写代码如何处理

摘要: 程序都自己的内存,一旦内存过多就会清楚以前的缓存。所以,在写代码的时候,不要仅仅只会推变量到栈中,还要会将变量从栈中释放。 那么问题来了,我们应该如何将内存从栈中释放呢? 要释放变量,那就要从javaScript的垃圾收集机制开始学习了。 javaScript的垃圾收集机制有两种 1.标记清除 这是 阅读全文

posted @ 2018-06-03 23:25 tzzf 阅读(158) 评论(0) 推荐(0) 编辑

2018年6月1日

手机端黑屏时定时器无法执行

摘要: 最近在写手机端页面时,发现当手机端黑屏时,当前页面的定时器停止执行了。 一开始的思路是,h5也会有想小程序的onShow,onHide的钩子函数的事件可以监听。但是经过各种实验也没能找到这样的事件。 so,开始了解为什么黑屏时定时器停止。经过一系列的百度之后,明白在是ios的为了安全考虑。 既然io 阅读全文

posted @ 2018-06-01 22:41 tzzf 阅读(568) 评论(0) 推荐(0) 编辑

2018年5月31日

js 浮点数计算Bug

摘要: 之前在写项目时候,直接对带小数点的数据进行运算,发现所得到的值并不是自己想要的。 经过一系列学习后,发现在JavaScript中,浮点数运算都是先转换成二进制,在转成二进制的时候有出现无限循环小数,故之后的运算都出现了问题(这是基于IEEE754数值的浮点计算的通病)。 因此,就翻阅了前公司的js工 阅读全文

posted @ 2018-05-31 22:13 tzzf 阅读(148) 评论(0) 推荐(0) 编辑

2018年1月21日

自写Jq动画载入插件

摘要: 在写网站的时候,有一些dom第一次进入屏幕时需要加一个动画进入效果,如下图 于是,自己就研究下,要是实现gif图中左图效果大致原理就是首先将dom放在他的左侧,并将他的透明度(opacity)设置为0; 然后监听滚轮当dom出现在屏幕中时候,然后dom移回原位,并且透明度(opacity)设置为1。 阅读全文

posted @ 2018-01-21 21:55 tzzf 阅读(142) 评论(0) 推荐(0) 编辑

2018年1月17日

gulp 无损压缩图片

摘要: 在做项目中,美工有时候会给一些比较大的图片,在做网站的时候,图片太大会影响加载速度。因此,我们需要无损压缩图片。 在尝试过几个压缩图片的方法,发现gulp中的gulp-tinypng-nokey插件是最好的方法。 gulp是是一个基于流的构建工具,可以自动执行指定的任务,简洁且高效。 当然gulp不 阅读全文

posted @ 2018-01-17 21:53 tzzf 阅读(305) 评论(0) 推荐(0) 编辑

2018年1月1日

vueHistory 模式下,布置到服务器上路由刷新会报nginx404错误

摘要: 之前写完vue项目后,布置到服务器,用nginx反向代理后,一开始进去,进各种路由都是没问题的,但是一旦f5刷新后就会出现一个nginx404的错误。 经过翻阅vue文档后,发现这是vueHistory 模式下的一个问题,需要后台配置支持。 History 模式是没有hash键,比如/a/b,f5刷 阅读全文

posted @ 2018-01-01 22:31 tzzf 阅读(1102) 评论(0) 推荐(0) 编辑

2017年12月24日

匿名函数与闭包

摘要: 匿名函数:创建函数时,不指定函数名的函数。此种函数只能运行一次,可以避免变量全局污染,保护变量。 匿名函数可以回调使用,比如 btn.addEventListener("click",function(){...}) 也可以用匿名函数声明函数名,比如var abc=function (){conso 阅读全文

posted @ 2017-12-24 20:07 tzzf 阅读(318) 评论(0) 推荐(0) 编辑

浅拷贝深拷贝

摘要: 浅拷贝只复制指向某个对象的指针,而不复制对象本身,新旧对象还是共享同一块内存。修改新对象也会修改了旧对象 深拷贝会另外创造一个一模一样的对象,新对象跟原对象不共享内存,修改新对象不会改到原对象。 为了让对象数组能深拷贝,通过百度对各种深拷贝函数的理解,融合出一种对数组和对象的深拷贝函数 阅读全文

posted @ 2017-12-24 15:57 tzzf 阅读(147) 评论(0) 推荐(0) 编辑

2017年12月17日

定时器

摘要: 定时器的执行原理: 因为js是单线程的,而定时器不能像多线程那样指定时间运行,它在js中仅仅只是计划代码在未来的某个时间执行,执行的时机是不能保证的。实际上浏览器负责进行排序,指派某段代码在某个时间点运行的优先级。定时器对队列的工作方式是当特定时间过去后将代码插入,执行的时间还未确定,只有当等主线程 阅读全文

posted @ 2017-12-17 21:00 tzzf 阅读(275) 评论(0) 推荐(0) 编辑

2017年12月11日

弹性布局 Flexible Box

摘要: 页面中任何一个元素都可以指定为 弹性布局(Flex) 属性:display 取值: 1、flex 将块级元素变为弹性布局容器 2、inline-flex 将行内元素变为弹性布局容器 兼容性: display:-webkit-flex; 注意:将元素设置为flex后,子元素的 float,clear以 阅读全文

posted @ 2017-12-11 22:42 tzzf 阅读(354) 评论(0) 推荐(0) 编辑

导航