20190503 前端开发日报

JavaScript 面试知识点合集;用vscode开发vue应用;Git工作流规范 Beta;关于JS引擎优化的理解;浅谈JS原型;JavaScript数据结构之-队列;令最新JS-XLSX支持样式的改造方法;JavaScript 太糟糕,JVM 有妙招

  1. JavaScript 面试知识点合集 Why put the tag in the last of HTML file? Putting the script tag in the last can reduce the delay time, users won’t wait a long time to open the webpage. Because the render direction is from top to bottom. How many data types does JavaScript have? Js have 7 data type in total, they are 6 pr…
  2. 用vscode开发vue应用现在用VSCode开发Vue.js应用几乎已经是前端的标配了,但很多时候我们看到的代码混乱不堪,作为一个前端工程师,单引号双引号乱用,一段有分号一段没有分号,有的地方有逗号有的地方没有逗号,空格回车都对不齐,…
  3. Git工作流规范 Beta正确的 Git workflow 规范,可以适当的减少杂乱提交,形成清晰美观的提交记录树。并方便对于每次新功能的Code Review。
  4. 关于JS引擎优化的理解 之前在网上断续地了解过JS引擎对JS源代码的优化过程,但都不是特别明白,最近阅读Mathias Bynens(V8作者之一)的关于JS引擎的优化原理的博文后觉得相对来说是讲得最明白易懂的,让我用最简单的方式对这个问题有了自己的理解。 这篇笔记是我对这个问题的个人理解的简单总结。原文已经写得足够明白足够好了,我是希望…
  5. 浅谈JS原型 JS原型学习笔记,如有错误,还请留言~~ 全局对象window 什么是原型 JS中一切皆为对象? 全局对象window 在谈window之前,试想一个简单的问题,打开浏览器在控制台输入 console.log("Hello"); 并按下回车键,我们理所应当看到了控制台给我们返回的结果 Hello ,那么, console.log() 这个方…
  6. JavaScript数据结构之-队列 队列遵循 FIFO,先进先出 原则的一组有序集合。队列在尾部添加元素,在顶部删除元素。在现实中最常见的队列就是 排队 。先排队的先服务。( 请大家文明排队,不要插队。 ) 创建队列 实现包含以下方法的Queue类 enqueue(element(s)):向队列尾部添加一个(或多个)元素。 dequeue():移…
  7. 令最新JS-XLSX支持样式的改造方法 背景 最近五一小长假,统一处理下之前开源的 Layui导出插件 lay-excel 反馈的部分问题,这个插件核心使用的是经过改造的 protobi/js-xlsx,支持设置样式但是不支持诸如 导出文件压缩、边距设置等功能,还存在很多BUG,效率也不高。 为解决这些问题,博主开始着手改造最新 JS-XLSX 让其支持样式设置,断点调试再…
  8. JavaScript 太糟糕,JVM 有妙招 虽然 JavaScript 凭借其简洁性、交互性等优势横扫了各大编程语言榜单,但是一直以来, JavaScript  应用程序的工具链极其复杂,引发不少开发者吐槽,在此,我们是否有更好的解决方案将其替代? 接下来,本文中将分享几个 JVM 的替代方案,希望对大家有所裨益。 作者 | Renato Athaydes 译者 | …
  9. 详解 HTTP 与 TCP 中 Keep-Alive 机制的区别 点击上方”田守枝的技术博客”,关注我 keepalive已经不是什么新鲜的概念了,HTTP协议中有keep-alive的概念,TCP协议中也有keep-alive的概念。二者的作用是不同的。本文将详细的介绍http中的keep-alive,介绍tomcat在server端是如何对keep-alive进行处理,以及jdk对http协议中keep-alive的支持。同时会详细介绍tc…
  10. Promise实现的基本原理(二) 距离我上次写的那篇 Promise实现的基本原理(一) 有十几天了(太懒了),这篇我想写Promise是如何实现串联调用then,解决回调地狱的。虽然说《深入理解ES6》这本书把Promise用法讲得很详细,但是自己理解起来还是有很多疑问(我好想上一篇也是这么说的)。 参考链接: JavaScript Promises … In Wick…
  11. JS版数据结构第四篇(矩阵) 本篇博客参考银国徽老师的《Javascript版数据结构与算法》 背景 其实从严格意义上来讲矩阵不能算一种典型的数据结构 而之所以把矩阵放到这个系列里面是因为矩阵在面试和笔试中是非常高频出现的 今天我们将会用js实现两道LeetCode上两道比较经典的矩阵相关的算法题 矩阵的定义对于大学学习过《线性代数》这门课…
  12. ISeeYou:一款基于Bash和Javascript开发的社会工程学&网络钓鱼工具 今天给大家介绍的是一款名叫ISeeYou的强大社工工具,该工具基于Bash和JavaScript开发,可帮助研究人员在进行社工技术测试或网络钓鱼培训过程中快速定位目标用户的确切地理位置。在拿到目标用户的地理位置坐标之后,研究人员就可以对目标用户展开基础的网络侦察活动,并执行进一步的测试。 注意 1、 在进行网络…
  13. JavaScript之常见算法排序 冒泡排序 冒泡排序即从头到尾依次比较相邻两数的大小,不符合顺序则交换位置,一直循环直到排序完成; 但方便程序编写的做法是,从第一个到最后一个数,每个数分别与排在后面每个数进行比较和交换位置; // 输入值 arr 为需要排序的数组 // 后面的代码类似 function bubbleSort(arr) { for (let i = 0; i <…
  14. 重学 html の meta 标签网页元数据,常用于定义网页的编码、说明、关键字、修改日期及其他信息。这些数据服务于浏览器、搜索引擎等。
  15. 基于虚拟DOM(Snabbdom)的迷你React原文链接原文写于 2015-07-31,虽然时间比较久远,但是对于我们理解虚拟 DOM 和 view 层之间的关系还是有很积极的作用的。
  16. 3分钟了解vue数据劫持的原理 目的: 了解Object.defineProperty如何实现数据劫持 阅读时间: 3 分钟 大致原理是这样的: 定义一个监听函数,对对象的每一个属性进行监听 通过Object.defineProperty对监听的每一个属性设置get 和 set 方法。 对对象实行监听 对对象内嵌对象进行处理 对数组对象进行处理 1. 先定义一个…
  17. JavaScript 中的函数式编程原理做了一些研究,我发现了函数式编程概念,如不变性和纯函数。 这些概念使你能够构建无副作用的功能,而函数式编程的一些优点,也使得系统变得更加容易维护。
  18. Vue源码: 关于vm.$delete()/Vue.use() 内部原理 在ES6之前, JS没有提供方法来侦测到一个属性被删除了, 因此如果我们通过delete删除一个属性, Vue是侦测不到的, 因此不会触发数据响应式。 见下面的demo。 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport&q…
  19. JS不再百度系列-日期对象的基本操作 UTC 和 GMT UTC是协调世界时(Universal Time Coordinated)英文缩写,GMT代表格林威治时间 格林尼治标准时(GMT)与世界时(UTC)是怎么回事 有什么差别吗 格林尼治标准时(GMT)是格林尼治天文台通过天文学观测将每日太阳穿过本初子午线的瞬间定为正午时刻,并以此来制定时间,所以…
  20. 从0实现一个webpack loader 在实现之前我们先来了解以下webpack的打包流程: 初始化配置对象,创建compiler对象 实例化插件,调用插件的apply方法,挂载插件的监听 从入口文件执行编译,按照文件类型调用相应的loader,在合适的时间调用plugin执行,并查找各个模块的依赖 将编译后的代码组装成一个个代码块(chunk),并安依赖和配…
  21. 我从 fabric.js 中学到了什么熟悉 canvas 的朋友想必都使用或者听说过 Fabric.js,Fabric 算是一个元老级的 canvas 库了,从第一个版本发布到现在,已经有 8 年时间了。我近一年时间也在项目中使用,作为用户简单说说感受:
  22. 浅谈js执行环境——声明提升的本质 ​(function() { console.log(typeof foo); // 这里会打印出什么? console.log(typeof bar); // 这里会打印出什么? var foo = ‘hello’, bar = function() { return ‘vian’; }; function foo() { return ‘hello’; } })();​ 复制代码 我们在接触JavaScript这…

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

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


关注我

我的微信公众号:前端开发博客,在后台回复以下关键字可以获取资源。

  • 回复「小抄」,领取Vue、JavaScript 和 WebComponent 小抄 PDF
  • 回复「Vue脑图」获取 Vue 相关脑图
  • 回复「思维图」获取 JavaScript 相关思维图
  • 回复「简历」获取简历制作建议
  • 回复「简历模板」获取精选的简历模板
  • 回复「加群」进入500人前端精英群
  • 回复「电子书」下载我整理的大量前端资源,含面试、Vue实战项目、CSS和JavaScript电子书等。
  • 回复「知识点」下载高清JavaScript知识点图谱

每日分享有用的前端开发知识,加我微信:caibaojian89 交流