![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
javascript
文章平均质量分 60
小飞猫_
不骄不躁,享受生活中的每一刻
展开
-
从数组的响应式看下一代响应式数据
随着MVVM框架的广泛使用响应式数据已经变得耳熟能详,现在谈响应式数据好像有点炒冷饭的意思,对!没错!不过这次炒的是蛋炒饭,而且还是加火腿肠的那种。之前看过几个框架的响应式数据实现,貌似都对数组(Array)做了特殊处理,咋的啦,有这么特别吗?看来是时候反思和总结一波了。如何实现响应式数据首先来简单实现一个响应式对象。easy! ES5在Object对象中新增了defineProperti...原创 2019-10-17 16:16:25 · 594 阅读 · 1 评论 -
关于通过web页面实现类似SSH客户端工具的技术方案
通过web页面来实现一个类似SSH工具的功能,这在目前各种云平台上已经是必备功能了。这分享一下我对如何实现该功能的一些探索和实践。原创 2018-12-31 18:05:35 · 20587 阅读 · 5 评论 -
XMLHttpRequest2.0的实践之路--山寨某云盘
结合xhr2.0,nodejs,ImageMagick,ffmpeg实现一个山寨版的微云,真的是山寨版,看看就知道。原创 2018-08-31 19:23:54 · 772 阅读 · 0 评论 -
原生JS实现深拷贝
说到深浅拷贝的问题,其实就是堆内存和栈内存的问题。 栈内存 保存基本数据类型或者引用类型数据的地址指针, 堆内存 保存对象本身。 所谓的深拷贝就是在内存中单独为该变量开辟一个存储空间。所以对于基本数据类型来说他的任何赋值都深拷贝,因为在栈内存中,数据的大小是固定,不可变的,变量一旦声明就会在内存中在栈内存中开辟一个新的空间。我们常说的深拷贝是针对于引用类型的。引用类型在栈内存中只保存了一...原创 2018-06-30 09:20:47 · 5646 阅读 · 0 评论 -
关于数组getter和setter的思考
接触过Vue的人基本都知道,Vue的数据绑定是通过ES5的getter和setter实现的,查看Vue源码,目录结构如下 observer目录下面的模块实现Vue的数据绑定功能,从文件夹和文件的命名来看可以知道采用的是观察者设计模式,看来有必要对常见的几种设计模式补补课了。 这里我不想详细分析整个数据绑定的实现过程,网上分析的很好的文章有很多,我只想说说我在看完这部分代码后的想法。...原创 2018-03-27 01:56:00 · 2554 阅读 · 0 评论 -
论服务器反推前端技术哪家强?
服务器向前端浏览器推送信息,目前主要的实现方式1 轮询2 comet3 websocket4 socket.io5 SSE原创 2017-08-23 13:46:14 · 921 阅读 · 0 评论 -
一个简易的表单校验插件wv.js
很多网站都有登陆和注册功能,只要涉及到登陆和注册的几乎全部都要用到表单,而表单在提交前,需要对输入进行校验,验证输入长度,类型等等是否合法,目前常用的就是jQuery-validate.js这个插件。其实这些插件的实现眼里都是比较简单的,主要用到input标签的focus和blur事件,然后在这个事件触发的时候通过正则表达式对输入的值进行检验,然后返回校验结果。 现在我们就来实现一个简单的表单原创 2017-07-19 15:48:01 · 1524 阅读 · 0 评论 -
ES6/7/8新特性Promise,async,await,fetch带我们逃离异步回调的深渊
Promise,async,await,fetch解决js中的异步请求问题原创 2017-07-20 11:59:08 · 15615 阅读 · 3 评论 -
JS控制浏览器全屏
由于工作的需要,需要对页面进行投屏操作,这时为了达到更好的效果,浏览器全屏显示类似F12的效果。 HTML5提供了操作浏览器全屏的API,目前google chrome 15 +, safri5.1+,firfox10+,IE1能够很好的支持该属性;低版本的IE可以通过ActiveX插件实现; google chrome 15 +, safri5.1+,firfox10+,IE1实现方式: 打原创 2017-07-06 19:34:57 · 8810 阅读 · 3 评论 -
聊聊前端开发中关于闭包的那点事
聊聊前端开发中关于闭包的那点事 今天老大去面试了一个两年工作经验的前端工程师,一个关于js闭包的问题直接将面试的人问懵了,我个人感觉对于一个有两年经验的前端开发人员来说,闭包应该是必须要掌握的。如果只有一年的经验,我可以理解,但是两年及以上,此处省略…。 好了不卖关子了,今天我们就来说说关于javascript的闭包。 我们从三个方面讲解 1.什么是闭包? 2.闭包有什原创 2017-06-11 20:35:46 · 2209 阅读 · 0 评论 -
js中的钩子机制(hook)
什么是钩子机制?使用钩子机制有什么好处? 钩子机制也叫hook机制,或者你可以把它理解成一种匹配机制,就是我们在代码中设置一些钩子,然后程序执行时自动去匹配这些钩子;这样做的好处就是提高了程序的执行效率,减少了if else 的使用同事优化代码结构。由于js是单线程的编程语言,所以程序的运行效率在前端开发是比较重要的,在开发中我们秉承如果能用switch case 的地方就不要用if else原创 2017-06-20 16:49:11 · 13691 阅读 · 4 评论