- 博客(17)
- 收藏
- 关注
原创 关于css的两个奇技淫巧
前两天在网上看到两个思路很巧妙的例子,拿来记录一下一、纯 CSS 实现滚动进度条效果原文链接效果是这样的就是顶部黄色的滚动进度条,随着页面的滚动进度而变化长短。第一眼看到这个效果,感觉这个跟随滚动动画,仅靠 CSS 是不可能完成的,因为这里涉及了页面滚动距离的计算。而就算用了js,感觉实现起来也是比较麻烦。那如何借助css的奇技淫巧来实现它呢?不卖关子了,下面我们运用线性渐变来实现这...
2019-01-14 11:35:15
269
原创 小程序踩坑记录
最近由于公司业务需求,开始接触坑贼多的小程序,现在把这一段时间以来,自己遇到比较有意思的坑整理一下,帮助有缘人~微信团队开发的小程序,整体看起来很多类似vue的地方,但看看文档,真正写起来就会发现,这个东西局限性太多了,不管是写法上还是功能上,开发起来根本没有vue的快感,只是有一些语法类似vue而已,不过没办法,谁让腾讯是爸爸呢。原生小程序 与其说原生小程序的坑多,不如说它限制多,更贴...
2018-09-07 18:18:31
640
原创 遍历器 Iterator
遍历器(Iterator)就是这样一种机制。它是一种接口,为各种不同的数据结构提供统一的访问机制。任何数据结构只要部署 Iterator 接口,就可以完成遍历操作(即依次处理该数据结构的所有成员)Iterator 的作用有三个:一是为各种数据结构,提供一个统一的、简便的访问接口;二是使得数据结构的成员能够按某种次序排列;三是 ES6 创造了一种新的遍历命令for…of循环,Iterator 接...
2018-02-24 21:34:09
2389
原创 Object.assign
Object.assign方法用于对象的合并,将源对象(source)的所有可枚举属性,复制到目标对象(target)const target = { a: 1 };const source1 = { b: 2 };const source2 = { c: 3 };Object.assign(target, source1, source2);target // {a:1, b...
2018-02-23 21:48:52
221
原创 描述对象的 Enumerable 属性
es6新增了Object.getOwnPropertyDescriptor方法可以获取对象属性的描述对象,其中有一项为Enumerable可枚举性let obj = { foo: 123 };Object.getOwnPropertyDescriptor(obj, 'foo')// {// value: 123,// writable: true,// enu...
2018-02-23 20:20:50
1534
原创 es6 对字符串的扩展
js底层采用的是utf-16的编码方式,平时我们可能对utf-8更熟悉一些,他们的区别在于utf-16是采用16位,用两字节来表示一个字符(Unicode码点在\u0000~\uFFFF之间的字符),而utf-8是8位,会根据情况来用一个字节、两个字节,最多不超过三个字节来表示一个字符。因为utf-16是用两个字节表示,所以大于两个字节的字符,用es5的方法就会出错,例如 这个字需要四个...
2018-02-22 13:57:47
362
原创 类数组转为数组
在es6提出之后,这个已经变得非常简单了,直接调用Array.from就可以了,如果具备Iterator接口的话,我们还可以用…(扩展运算符)1.Array.from es6提出的,非常好用,简单来说,只要具备length属性的,就可以转为数组。2. …(扩展运算符) 必须具备Iterator接口才可以,像函数的参数,获取的dom元素等。不支持es6的话,可以用下面的3.Ar...
2018-02-13 20:04:05
386
原创 vue-响应式系统
vue作为一个前端框架,近两年非常的火,虽然它的社区不像react那样繁荣,但它配套的东西都有固定的团队维护,用起来更方便。它是MVVM模型的框架(不熟悉框架模型的同学可以看看阮一峰大神的博客,或者点这里),实现数据的双向绑定,与其他框架相比vue非常的轻量级,另一个重要的特点就是它的响应式系统。用一张图来表示的话就是这样 归纳起来,Vue.js在这里主要做了三件事:...
2018-02-12 16:24:25
1645
原创 电影播放录入系统
自学node道路上的又一个小项目,运用express,简单操作mongodb实现电影信息录入数据库,添加新电影,列表展示所有信息,修改信息,播放电影等功能。项目地址https://github.com/zhouxinzhouxin/express-movie写的不好,欢迎批评,另外临近年关了,大家平时都很辛苦,特别同是程序员的同行前辈们,更是辛苦,提前祝大家新年快乐,不要加班了~~...
2018-02-10 21:11:28
350
原创 connect中间件问题
最近一直在看node.js实战,讲的挺好的,不过是好多年前的书,好多知识点、api都已经变迁。今天看到connect中间件一块,与现在的版本差别不小,而且直接百度搜到有价值的文章很少,可以直接去github上搜。附上connect git地址,希望能帮到其他人https://github.com/senchalabs/connect#readme
2018-02-03 11:13:46
284
原创 几种基本的数据结构
最近突然心血来潮,用js把几种基本的数据结构整理了一下,放到了个人的git上,有兴趣的欢迎看一下。 https://github.com/zhouxinzhouxin/Data-Structures戳一下,带你去~
2018-01-29 09:00:57
249
原创 web聊天室
最近这两天在看node.js,看大家好多人都拿聊天室这个项目来练习node,我也来凑个热闹。整个项目是基于node.js ,webSocket的实现实时通信,管理多个房间,统计房间内用户,切换不同房间等功能。看着nodejs实战这本书,但书中代码老旧,读懂书中代码后,去官网查最新文档,对比着修改代码,最后将功能重新实现。既屡了逻辑,也了解了最新文档,收获蛮多的。目录结构 代码: server.j
2018-01-22 21:50:06
557
原创 隐式类型转换(==的情况)
(前言:这也是前端面试的高频考点,虽然平时大家肯定都接触过或经常使用,但这个问题真的较起真来细细的问,相信很多人都会懵,在《你不知道的js:中卷》里有对这块知识较为详细的详细介绍,推荐大家去看看)正文 :==在比较两个不同类型的值时会发生隐式类型转换,会将其中之一或两者都转换为相同类型后再进行比较。===是严格比较两个值相等(两个特例,NaN不等于NaN,+0等于-0),不会发生隐式类型转换。那具体
2017-12-09 23:13:55
747
原创 对象的一些方法
一、属性描述符在es5之前,javaScript本身是没法直接检测属性特性的,比如判断属性是否是只读。es5开始,有了属性描述符,在创建普通属性时属性描述符使用默认值。var myObject = { a:2};Object.getOwnPropertyDescripter(myObject, "a");//{// value: 2,// writable: true,
2017-12-02 21:25:47
197
原创 JS闭包
这又是一个老生常谈的js基础问题了,一千个人眼里有一千个哈姆雷特,同样,一千个人眼里也可能有一千个对闭包的理解,每个人对它的理解都会带一些自己的特色,而这个特色有时候又不太好表达,这就造成了网上对它的介绍实在太多太多,今天我就说一下我对闭包的认识。闭包是基于词法作用域书写代码时所产生的自然结果,其实可能在你的代码中早已经到处是闭包了,现在缺少的是根据自己的意愿来识别,拥抱和影响闭包的思维环境。...
2017-11-27 23:31:30
190
转载 搞懂Websocket
这篇文章是我从别的大神那看来的,整篇文章清纯不做作,看完后收获很大,特意转载过来~~(原文链接找不到了)一、websocket与http WebSocket是HTML5出的东西(协议),也就是说HTTP协议没有变化,或者说没关系,但HTTP是不支持持久连接的(长连接,循环连接的不算)首先HTTP有1.1 和 1.0之说,也就是所谓的 keep-alive ,把多个HTTP请求合并为一个,但是 w
2017-11-16 20:24:33
150
原创 原型链详解
校招季,走前端方向的同学们肯定都被问过原型链相关的问题吧,这是js的基础问题了,只不过让大家总结,可能又说不太出来,个人觉得这篇文章比较通俗易懂,又比较全面,希望能帮助到那些还在泥潭中挣扎的同学~
2017-11-05 20:38:56
634
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人