20200428 前端开发日报

GitHub 中间人攻击原理分析;前端有架构吗?;Web网页渲染的几种模式;一个单行代码的 npm 库,竟然让数百万个 JavaScript 项目崩溃了…;Vue 结合html2canvas和jsPDF实现html页面转pdf;灵魂拷问,你真的懂 JavaScript 中的变量提升吗?;Vue CLI3 移动端适配 【px2rem 或 postcss-plugin-px2rem】;H5、Web、NodeJS 人脸检测识别 基于TensorFlowJS

  1. GitHub 中间人攻击原理分析

    文章目录 序言 为什么会出现这样的提示 总结 序言 3 月 26 日,国内多个地区访问 Github 以及 Github pages 的时候,谷歌浏览器提示“您的连接不是私密连接”的错误信息,不少用户想知道为什么会这样。在这起事件中,我得出的结论是由于 …

  2. 前端有架构吗?

    本文首发于欧雷流。由于我会时不时对文章进行补充、修正和润色,为了保证所看到的是最新版本,请阅读原文。 从事前端开发的你,不知有没有被问过:「前端有架构吗?」 问你的人的身份,可能是你的 boss 或上司,…

  3. Web网页渲染的几种模式

    译文:Rendering on the Web 本文主要内容来源于对上文的翻译,图也来源于此,加上了一点平时工作的理解,英语渣、翻译不是很准确,有条件的可以直接阅读上文链接。本文主要是自己在阅读时做的笔记,供自己以后查…

  4. 一个单行代码的 npm 库,竟然让数百万个 JavaScript 项目崩溃了…

    上周六,一个 JavaScript 库的更新让近乎整个 JavaScript 生态系统陷入了混乱,据分析机构粗略统计,数百万个项目都受到了影响。

  5. Vue 结合html2canvas和jsPDF实现html页面转pdf

    结合 html2canvas 和 jsPDF 实现 html 页面转 pdf By :授客 QQ : 103355122 实践环境 win10 Vue 2.9.6 axios 0.18.0 html2canvas 1.0.0-rc.3 jspdf 1.5.3 安装 html2canvas 进入vue项目所在目录,然后执行以下安装命令 cd /d E:MyProjectsTMPfrontend E:MyProjectsTMPfrontend>n…

  6. 灵魂拷问,你真的懂 JavaScript 中的变量提升吗?

    引言 对于变量提升这个问题,我想从事前端的同学都或多或少认为我懂这个。曾经,我也是这样认为的, 我懂变量提升 ,并且可以从变量在 Chrome 中的内存分配讲起,以及中间发生了什么。 但是,在一次面试中,我遇到了几个一起面前端的同学(当然技术水平参差不齐,并不是很高),在和他们聊这次笔试中的变量提升的…

  7. Vue CLI3 移动端适配 【px2rem 或 postcss-plugin-px2rem】

    今天,我们使用Vue CLI3 做一个移动端适配 。 前言 首先确定你的项目是Vue CLI3版本以上的。 一、移动端适配包 1、安装移动端适配包 npm i lib-flexible -S 复制代码 2、在 main.js 引入适配包 import Vue from ‘vue’ import App from ‘./App.vue’ import ‘lib-flexible’ // 引入适配包 Vu…

  8. H5、Web、NodeJS 人脸检测识别 基于TensorFlowJS

    使用 Vue 框架搭建演示, H5 、 Web 、 NodeJS 实现人脸检测识别,基于 TensorFlowJS 实现的 face-api.js 人脸识别库。 起初在 2018 年时,有个项目用人脸检测,当时我在百度寻找了一下关于在浏览器网页 JavaScript 实现人脸识别的方法很少,好多都是用 百度AI 人脸识别接口来实现的。当时 Python 人工智能方面最为…

  9. 十分钟搞定 TypeScript + webpack 配置

    每日前端夜话 第321篇 翻译: 疯狂的技术宅 作者:Dr. Axel Rauschmayer 来源:2ality 正文共:2437  字 预计阅读时间:10 分钟 本文介绍了如何通过 TypeScript 和 webpack 创建 Web 应用程序。我们仅使用 DOM API,而不使用特定的前端框架。源码文件 ts-demo-webpack 可以从 GitH…

  10. 通过这些问题有助于你快速了解学习 Git

    点赞再看,养成习惯本文 GitHub [链接] 上已经收录,更多往期高赞文章的分类,也整理了很多我的文档,和教程资料。欢迎Star和完善,大家面试可以参照考点复习,希望我们一起有点东西。

  11. 前端|HTML5中的网络存储

    欢迎点击「算法与编程之美」↑关注我们! 本文首发于微信公众号:"算法与编程之美",欢迎关注,及时了解更多此系列文章。 欢迎加入团队圈子!与作者面对面!直接点击! 1 前言 随着互联网的快速发展,基于网页的应用越来越普遍,同时也变得越来越复杂,为了满足日益更新的需求,会经常性的在本…

  12. Vue-Router 基础入门教程

    这周的计划是用VUE将之前的小demo的前端给重构了,并且做成前后端分离的样式,因为之前的那个聊天室的demo几乎都是在一个路由上完成的,所以学习Vue-router是不可避免的,本次笔记是我在学习vue-router这个框架过程中的一些笔记。中间也穿插了部分知识点,希望能帮助到正在学习Vue-router的朋友。 什么是vue-router? …

  13. CSS + JS 送学妹满屏幕小爱心

    故事开始 午饭时间,暗恋已久的学妹拉着我的衣袖:“学长学长,你能不能让这些爱心变成五颜六色的吗~”。我在旁边笑开了花~~~ 诶呀,口水流出来了。我想最终效果是这样的(猜猜多少个爱心): 然后开始动手吧~ 学啥…

  14. 大哥你JavaScript可能不太需要switch

    译原文: www.valentinog.com/blog/switch… 作者:Valentino 译:黄梵高 无"switch" 不欢 Java的大佬非常喜欢switch,JavaScript开发人员也是如此。老实说,我们的开发人员很懒惰,对于像我这样缺乏创造力的人来说,很容易坚持现状。 switch很方便:给定一个表达式,我们可以检查它是否与一堆cas…

  15. 「源码级回答」大厂高频Vue面试题(上)

    写在前面(不看错过一个亿) 最近一直在读 Vue 源码,也写了一系列的 源码探秘 文章。 但,收到很多朋友的反馈都是:源码晦涩难懂,时常看着看着就不知道我在看什么了,感觉缺乏一点动力,如果你可以出点面试中会问到的 源码 相关的面试题,通过面试题去看源码,那就很棒棒。 看到大家的反馈,我丝毫没有犹豫…

  16. JavaScript模块化历程

    现代前端,模块化已成必备,不仅有多种工具类的库,还被写进规范当中,不论大小公司,代码都遵循模块化思想在开发,它已经成为独立于技术的一种经验和能力。 本文我们就来聊聊这个话题。 需求 网页刚出现的时候,只是很简单的文档,样式简单,极少的交互,极少的设计元素,一个页面不会依赖很多文件,逻辑代码少。 …

  17. 44道JavaScript送命题

    很久以前看过一个老外写的帖子, JavaScript Puzzlers! ,直译就是JavaScript难题,里面列举了44道JavaScript选择题,大部分都是让人摸不着头脑的题目,需要仔细琢磨一番才能得到正确答案。也有一些作者也没有解释清除,直接通过实验给出答案了。 这100个问题是在ECMA 262(5.1)环境下,浏览器中试验的,如果是node环…

  18. 【js 编程】讲一道关于懒汉的面试题

    前天晚上在一个技术群里面看到一些小伙伴在讨论这么一道有趣的题目,题目 大致意思就是实现一个懒汉,并且提供一系列的行为方法,调用 eat 就打印吃饭信息,调用 sleep 方法则进行延迟传入时间,再进行下一步的操作。 当然,限制条件是不使用 Promise。 实现一个LazyMan,可以按照以下方式调用: LazyMan(“Hank”…

  19. 如何理解vue的computed?

    这道考察computed属性的题蛮有意思的。不仅仅考察了computed,而且还考察了vue的依赖收集以及脏检查。 如果此时this.a = 0,foo()如何计算? 如果此时this.b = 2,foo()如何计算? 如果a的初始值为-1,执行this.a…

  20. 前端面试的那些事儿(2)~ 不再害怕被问 JavaScript 对象

    对象是JavaScript语言最为复杂的概念,只要把对象理解透彻,JavaScript 就算是打通了任督二脉。 本文主要从面试的角度去讲解对象,而不会详细的讲解对象的API。 对象 对象和其他基本类型不同的是,对象是一种复合值:它将许多值(原始值或者其他对象)聚合在一起,可通过名字访问这些值。 于是,对象也可看做是属…

  21. 用 JS 玩轉 iOS shortcuts

    前言 出社會後,平常一天 24 小時,可能有 14 小時都會待在電腦前的我,對於手機功能的需求真的不多,也就不像學生時代會很關注 iOS 上有什麼新的功能。而就在上個月的某天,我ㄧ如往常地在 GitHub 上閒晃時,發現一款叫做 shortcuts-js 的套件,原以為是另一套處理網頁快捷鍵的框架,但看了其敘述寫的是『A JavaSc…

  22. JavaScript学习笔记:对象的基本用法

    JavaScript 中共有七种数据类型,分别是 字符串 ( String )、 数字 ( Number )、 布尔 ( Boolean )、 空 ( Null )、 未定义 ( Undefined )、 符号 ( Symbol )和 对象 ( Object )。 前六种称为 原始类型 或 简单类型 , 对象 ( Object )被称为 复杂类型 。 Jav…

  23. 一张图让你看懂“js中的事件执行机制, 事件轮询?宏任务微任务?”

    我所接触到的宏任务:主js、setTimeout、setInterval、setImmediately我所接触到的微任务:process.nextTick()、promise.then()概念性的东西我就不赘述了, 直接上代码:

  24. 精读《React 性能调试》

    在数据中台做 BI 工具经常面对海量数据的渲染处理,除了组件本身性能优化之外,经常要排查整体页面性能瓶颈点,尤其是维护一些性能做得并不好的旧代码时。

  25. 学了 gulp 想练练手?正好压缩下你的博客

    一些关于 Gulp 的基础概念 首选要明确的一点是, gulp 中的每个任务都是一个 javascript 异步函数。处理异步任务,最基础也最常用的就是 error-first callbacks , 但是 gulp 也支持流、 promises 、 async/await 等等其他异步方式,根据自己的需要进行选择即可,我们这里选用的就是返回流的方式。 代表…

  26. 学习JavaScript数据结构与算法(五)— 集合

    本人是一个刚入行的菜鸡前端程序员,写这个文章的目的只是为了记录自己学习的笔记与成果,如有不足请大家多多指点。 数组(列表)、栈、队列和链表这些顺序数据结构我们在前面的文章已经一起学习过了。本篇文章我们一起来学习集合,这是一种不允许重复的顺序数据结构。 构建数据集合 集合是由一组无序且唯一(即不能重…

  27. 深度:手写一个WebSocket协议 [7000字]

    我之前是做IM相关桌面端软件的开发,基于TCP长链接自己封装的一套私有协议,目前公司也有项目用到了ws协议,好像无论什么行业,都会遇到这个ws协议。

  28. 零信任理念有望缓解 fastjson 软件漏洞

    零信任理念有望缓解fastjson软件漏洞动态信任,缓解漏洞基于线程隔离的资源访问精细化访问控制应急响应平滑下线实时安全策略变更假定被攻击使用高版本的jdk的增加攻击难度使用反序列过滤器按需权限原则和RASP、安全sdk、沙盒的不同参考资料 前言 业界公司有Google基于“Zero Trust”原则落地实现了自…

  29. Web中的图像技术总结,前端开发中各种图片引入的优点缺点及实例

    前端开发人员在构建网站时需要做出的决定之一就是添加图片的技术。它可以是HTML <img>,也可以是通过CSS背景生成的图片,也可以是SVG <image>。选择正确的技术很重要,并且可以在性能和可访问性方面…

更多内容请关注公众号【前端开发博客】每日更新


关注我

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

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

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