20191120 前端开发日报

前端的发展和未来趋势;GitHub Mobile 抢先体验篇(多图预警);WebSocket实现web端即时通信;前端的一些雕虫小技,从 100% 和滚动条说起;http 2.0 初体验;从零手写逐步实现Promise A+标准的所有方法;双线程前端框架:Voe.js;Node.JS发送http请求批量检查文件中的网页地址、服务是否有效可用

  1. 前端的发展和未来趋势 本文由葡萄城技术团队于博客园原创并首发 转载请注明出处: 葡萄城官网 ,葡萄城为开发者提供专业的开发工具、解决方案和服务,赋能开发者。 前端技术的发展日新月异,过一段时间就会出现新的框架、工具、插件,伴随着十几年的发展,前端领域已经告别了野蛮生长的时期,越发表现出成熟和现代化,引领了整个技术行...
  2. GitHub Mobile 抢先体验篇(多图预警) 在昨天刚刚结束的 GitHub Universe 大会上,GitHub 终于官方宣布了将会推出自家研发的手机版应用:GitHub Mobile,目前只针对 ios 系统推出了内测邀请测试。同时,获得 iOS 版本应用内测邀请的用户,还将自动获得新版 GitHub Notifications 界面的内测资格。 经过多年的等待,官方终于有所作为了!于是我在官...
  3. WebSocket实现Web端即时通信 前言 WebSocket 是HTML5开始提供的一种在浏览器和服务器间进行全双工通信的协议。目前很多没有使用WebSocket进行客户端服务端实时通信的web应用,大多使用设置规则时间的轮询,或者使用长轮询较多来处理消息的实时推送。这样势必会较大程度浪费服务器和带宽资源,而我们现在要讲的WebSocket正是来解决该问题而出现,使...
  4. 前端的一些雕虫小技,从 100% 和滚动条说起 1、100%和滚动条 当我们在css中把html和body同时设为100%时,会出现滚动条 html, body { width: 100%; height: 100%; } 原因是html和body之间有8px的margin,这个margin怎么来的呢,我们在chrome中用F12看一下 这个8px...
  5. http 2.0 初体验 站点搬回国了,曾经上了https后无奈访问出问题,又退回http,如今终于可以大胆的使用https了。而且,用chrome访问自己的站点时,终于有那把表示安全的锁了。 毕竟https会多一层校验的过程,肯定会比http更耗些性能,便瞄上了http2.0,都说2.0性能有提升,并且2.0需要在https之上,那不正好么?于是上了2.0的船。 ...
  6. 从零手写逐步实现Promise A+标准的所有方法 ~ Promise篇 本文皆在实现Promise的所有方法,代码均测试可运行,编写于 2019年11月17日 GitHub 仓库更有自己实现的 webpack、mini-react、redux、react-redux、websocket , Electron 跨平台桌面端、 React-native 移动端开源项目等 仓库地址: https://github.com/JinJieTan 回顾 Promise ...
  7. 双线程前端框架:Voe.js halo,大家好,我是132,大家好久不贱了哈! 最近上课真的很忙,时间很少的用来写代码了::>_<::,今天主要给大家带来的是一个新框架 voe 看一眼 API,乍一看仿佛和 fard 类似的 API,仿佛又写了个跨端小程序框架? 然而并不是…… voe 是一个底层小程序框架 意思是它实现了小程序的双线程,利用...
  8. Node.JS发送http请求批量检查文件中的网页地址、服务是否有效可用 在node.js中只需要几行代码就可以发送http请求,通过检查statusCode可以判断该网址服务是否有效。 如下代码: var http = require('http') var checkExists = function(urlPath, cb) { var options = { host: '192.168.2.101', port: 8064, path: encodeURI(urlPath)} var req = http.request(options, function(r) ...
  9. Redis 实现分布式锁(Node.js) 在 course-se 的 提交服务 中,为了限制同一用户在规定时间(5秒)内,无法进行二次提交,开发人员实现了基于 Redis 的分布式锁。通常,我们称该业务场景为 节流 (Throttle)。 在阅读此部分代码时,我一开始寻思着完全可以使用一个 Map 维护各个用户及其剩余时间的关系,何必使用 Redis 。后来,经过了仔细思考,...
  10. 三种 JavaScript 深度学习框架介绍 谈到机器学习,我们脑海首先蹦出的编程语言是什么?一定是python。其实除了python,Javascript也是不错的选择。都说现在是大前端时代,从移动开发、服务器端,甚至桌面软件开发(比如大名鼎鼎的VS Code),都有Javascript的身影。我在之前写过几篇有关浏览器中的机器学习的文章: 浏览器中的手写数...
  11. 浅谈javascript中的递归和闭包 递归和闭包作为js中很重要的一环,几乎在前端的面试中都会涉及,特别闭包。今天前端组的组长冷不丁的问了我一下,粗略的回答了一下,感觉不太满足,于是重新学习了一下,写下本篇。 在说这个两个概念之前,我们先回顾一下 函数表达式 。 function实际上是一种引用对象,和其他引用类型一样,都有属性和方法。定义函...
  12. Vue3.0响应式系统二三事 惊觉近来对于新技术的涉猎和思考总结有些懈怠(自我反省ing),赶紧写篇博客消散一下愧疚感。 10月5号,正值国庆佳节,Vue作者尤雨溪在全球最大的同性交友网站 github 开源了 vue@3.0.0 的 alpha 版代码 ,大家可以去看看小右的提交记录和issue处理速度,不得不感慨, 优秀的人总是自律且勤奋的 。想想当时还在青海浪...
  13. jQuery 源码解析(二十三) DOM操作模块 替换元素 详解 本节说一下DOM操作模块里的替换元素模块,该模块可将当前匹配的元素替换指定的DOM元素,有两个方法,如下: replaceWith(value)     ;使用提供的新内容来替换匹配元素集合中的每个元素。value是新内容,可以是html字符串、DOM元素、jQuery对象或返回新内容的函数。 replaceAll(value)  ...
  14. JS数组Reduce方法详解 一直以来都在函数式编程的大门之外徘徊,要入门的话首先得熟悉各种高阶函数,数组的reduce方法就是其中之一。 reduce方法将会对数组元素从左到右依次执行reducer函数,然后返回一个累计的值。举个形象的例子:你要组装一台电脑,买了主板、CPU、显卡、内存、硬盘、电源...这些零件是组装电脑的必要条件。 装的过程可...
  15. JS基础知识整理[bind+call+apply]实现(三) 来源于mdn bind()方法创建一个新的函数,在bind()被调用时,这个新函数的this被bind的第一个参数指定,其余的参数将作为新函数的参数供调用时使用。 输入 fn.bind(thisArg,arg1,arg2,...) 复制代码 第一个参数为绑定的this指向。 其余的参数为。当目标函数被调用时,预先添加到绑定函数的参数列表中的参数。 ...
  16. leetcode求峰值,js实现 原题: 最开始是照着提示的思路进行,中规中矩,用时64ms  /**  * @param {number =nums -1;   let nums =nums[nums.len...
  17. JavaScript在Array数组中按指定位置删除或添加元素对象 JavaScript的数据中可通过splice/slice在指定位置添加或删除元素。另外还有slice、delete等方法实现。 splice简介 splice方法向/从数组中添加/删除项目,然后返回被删除的项目。 该方法会改变原始数组。 arrayObject.splice(index, howmany, item1, ..., itemX) 参数 描述 index 必需。整数,规定添加/删除...
  18. javaScript 一些小技巧 日历 创建过去七天的数组,如果将代码中的减号换成加号,你将得到未来7天的数组集合 // 创建过去七天的数组 .map(days => new Date(Date.now() - 86400000 * days)); 生成随机ID 在原型设计时经常使用的创建ID功能。但是我在实际项目中看到有人使用它。其实这并不安全 // 生成长...
  19. JavaScript测试教程–part 4:模拟 API 调用和模拟 React 组件交互[每日前端夜话0xEA] 每日前端夜话 0xEA 每日前端夜话,陪你聊前端。 每天晚上18:00准时推送。 正文共:1822 字 预计阅读时间:6 分钟 作者:Marcin Wanago 翻译:疯狂的技术宅 来源: wanago.io 1. JavaScript测试教程-part 1:用 Jest 进行单元测试 2. JavaScript测...
  20. 代码详解:使用JavaScript进行面向对象编程的指南 一切都从对象开始。 对象,即我们相互交流的一个载体,有其属性和方法。对象是面向对象编程的核心,不仅用于JavaScript,而且还适用于Java、C语言、C++等。不再考虑单个变量和函数,而选择自给型的对象。 以下是在讨论面向对象编程(OOP)时最常用到的概念: 对象,属性,方法 类 封装 抽象 复...

关注github前端日报 订阅精彩文章

前端日报栏目数据来自码农头条,每日分享互联网上热门的前端开发、移动开发、设计、资源和资讯等,为开发者提供动力,如果觉得内容对你有用,记得分享给你的小伙伴。进入码农头条查看更多

原文:20191120 前端开发日报 ,未经许可,禁止转载。
来源:前端开发博客 (http://caibaojian.com/fe-daily-20191120.html)