20180725 前端开发日报

一次前端面试的提问总结;JS 中可以提升幸福度的小技巧;vue海量数据列表操作的性能优化,渣渣手机性能一秒变丝滑;前端水印生成方案(网页水印+图片水印);Vue源码阅读 – 批量异步更新与nextTick原理;前端性能优化之Lazyload;你不知道的JavaScript 执行机制;JS自问自答『数据类型与类型检测』

  1. 一次前端面试的提问总结 记一次比较遥远的面试提问,记得多少写多少,附较详细的解答,欢迎指出错误。 1. 说说CSS中的相对定位与绝对定位: position: relative; 为相对定位,根据自身位置来进行定位。 position: absolute; 为绝对定位,若父级节点的 position 属性不为 static ,则根据父级节点位置…
  2. JS 中可以提升幸福度的小技巧 本文主要介绍一些JS中用到的小技巧,可以在日常Coding中提升幸福度,将不定期更新~ 1. 类型强制转换 1.1 string强制转换为数字 可以用 *1 来转化为数字(实际上是调用 .valueOf 方法) 然后使用 Number.isNaN 来判断是否为 NaN ,或者使用 a !== a 来判断是否为 NaN ,因为 NaN !== NaN …
  3. vue海量数据列表操作的性能优化,渣渣手机性能一秒变丝滑 前言: 我们在做移动端的点餐程序的时候,发现当菜品数量巨大的时候,特别是外加很多操作的时候 (比如菜品半整份切换的时候) ,列表里面的菜品数量 进行快速 加减和半整份切换就会卡顿。 那到底是什么让手机如此卡顿呢? 我写了个用例,用了2277条数据 (找不到性能差的手机,…
  4. 前端水印生成方案(网页水印+图片水印) 前端水印生成方案     前段时间做某系统审核后台,出现了审核人员截图把内容外泄露的情况,虽然截图内容不是特别敏感,但是安全问题还是不能忽视。于是便在系统页面上面加上了水印,对于审核人员截图等敏
  5. Vue源码阅读 – 批量异步更新与nextTick原理 vue已是目前国内前端web端三分天下之一,同时也作为本人主要技术栈之一,在日常使用中知其然也好奇着所以然,另外最近的社区涌现了一大票vue源码阅读类的文章,在下借这个机会从大家的文章和讨论中汲取了一些营养,同时对一些阅读源码时的想法进行总结,出产一些文章,作为自己思考的总结,本人水平有限,欢迎留言讨论~ …
  6. 前端性能优化之Lazyload @(Mob前端-冬晨) Lazyload 简介 前端工作中,界面和效果正在变得越来越狂拽炫酷,与此同时性能也是不得不提的问题。有些项目,页面长,图片多,内容丰富。像商城页面。如果同步加载时一次性加载完毕
  7. 你不知道的JavaScript 执行机制 你是否遭受到这样的恐吓? 你是否有过每个表达式前面都console一遍值去找执行顺序? 看了很多js执行机制的文章似乎都是似懂非懂,到技术面问的时候,理不清思绪。总结了众多文章的例子和精华,希望能帮到你们 JavaScript 怎么执行的? 执行机制——事件循环(Event Loop) 通常所说的 JavaScript Eng…
  8. JS自问自答『数据类型与类型检测』秋招已经如火如荼的展开了,即将奔赴战场前,该对自己所学的知识进行一下温习和整理了,开始学习JavaScript就是从数据类型入手的,所以从数据类型开始对知识进行复习,查漏补缺。
  9. Vue的钩子函数[路由导航守卫、keep-alive、生命周期钩子]说到Vue的钩子函数,可能很多人只停留在一些很简单常用的钩子(created,mounted),而且对于里面的区别,什么时候该用什么钩子,并没有仔细的去研究过,且Vue的生命周期在面试中也算是比较高频的考点,那么该如何回…
  10. 使用Vue创建一个Excel插件 这篇文章也发在我的博客,欢迎围观 Translated by FrankZhang. 如有错误,敬请不吝告知,谢谢! 关于本文 在这篇文章中,你将会经历一遍使用Vue和Excel JavaScript API 打造一个Excel插件的过程。 预备知识
  11. 详解 Vue Native 译者按: 一家叫GeekyAnts的印度公司开发了Vue Native,基于React Native实现。 原文: Introducing Vue Native 译者: Fundebug 为了保证可读性,本文采用意译而非直译。另外,本文版权归原作者所有,翻译仅用于学习。 小编推荐:Fundebug专注于JavaScript、微信小程序、微信小游戏…
  12. mpvue开发cnode社区问题记录 mpvue 是一个使用 Vue.js 开发小程序的前端框架。框架基于 Vue.js 核心,mpvue 修改了 Vue.js 的 runtime 和 compiler 实现,使其可以运行在小程序环境中,从而为小程序开发引入了整套 Vue.js 开发体验 开发这
  13. 可扩展的H5 Web播放器 clappr是一个开源的Web网页播放器,支持大部分现代浏览器,拥有丰富的扩展插件,如进度条缩略图、标记、播放速率、水印广告、360度视角等。 查看演示 下载源码 使用方法 1.在页面中的body部分加入播放器元素: <div id="player"></div> 我们在页面中加入了一个#…
  14. 多页项目的webpack配置 在我们使用vue,angular等框架开发的时候,大多数都是构建单页项目。而且,像这样的框架都有对应的命令一步生成webpack配置(比如vue的vue init webpack my-project之类)。 但是如果我们要开发多页面项目的时候就没有这么方便了,你必须要自己配置webpack。 单页项目和多页项目的区别在于单页项目所有的…
  15. 利用promise做一个请求锁 在最近开发小程序的过程中,遇到一个需求,就是请求的时候header需要带上accessToken, accessToken是通过登陆接口返回的参数,可能会出现过期的情况,则需要重新登陆,所以每次加载小程序都会进行一次本地储存的accessToken校验,但是再小程序的运行机制下,app的onLaunch,加载pages的onLoad会并发执行,在弱网的情况下…
  16. 前端通过spark-md5.js计算本地文件md5 背景:说到本人第一次使用spark-md5.js还是差不多一年以前的时候了,当时后台老大说要搞一个文件分片上传的功能。我当时就心想:what?啥是文件分片上传,完全没听过好吗?至于我当时内心那个慌就不多描述了,总之文件分片上传需要一个识别文件的唯一标识,而md
  17. 一篇文章理解JS继承——原型链/构造函数/组合/原型式/寄生式/寄生组合/Class extends说实在话,以前我只需要知道“寄生组合继承”是最好的,有个祖传代码模版用就行。最近因为一些事情,几个星期以来一直心心念念想整理出来。本文以《JavaScript高级程序设计》上的内容为骨架,补充了ES6 Class的相关…
  18. webpack 4.0 Tapable 类中的常用钩子函数源码分析 Tapable 是webpack中的基础类,类似于node中的EventEmitter,都是注册监听,然后收发事件,监听函数执行的过程,自身可以被继承或混入到其它模块中。 webpack本质上是一种事件流的机制,它的工作流程就是将各个插件串联起来,而实现这一切的核心就是Tapable,webpack中最核心的负责编译的Compiler和负责创建bundles的C…
  19. 基于 HTML5 结合互联网+ 的 3D 隧道目前,物资采购和人力成本是隧道业发展的两大瓶颈。比如依靠民间借贷,融资成本很高;采购价格不透明,没有增值税发票;还有项目管控和供应链管理的问题。成本在不断上升,利润在不断下降,隧道产业的“互联网+”…
  20. JS字符串补全方法padStart()和padEnd()简介 这篇文章发布于 2018年07月24日,星期二,00:29,归类于js实例。 阅读 16 次, 今日 16 次 byzhangxinxu from https://www.zhangxinxu.com/wordpress/?p=7826 本文可全文转载,但需要保留原作者和出处。 一、关于字符串补全 在JS中,字符串补全是常用操作,用的比较多的就是时间或者日期前面的补 0 。 …
  21. 没朋友(mpvue),还有音乐陪你炎炎夏日,剧烈的高温也抵挡不住对学习的坚持。对于学习,很多时候都会有松懈和逃避的心理,但看到身边近乎疯狂的考研党们,我还是选择了坚持。距离上次发文章已经有一个月之久了,期间学习了很多知识,越学习越…
  22. 解读js模块化方案modJS 写在前面 由于笔者所在的团队使用fis3打包工具搭配modJS来解决js模块化,并且最近也在研究js模块化方案,故写下这篇文章来解读modJS的实现细节。 限于笔者水平,如果有错误或不严谨的地方,请给予指正,十分感谢。 一、JS中的模块规范(AMD/CMD/C
  23. jQuery源码解析jQuery 是一个非常优秀且经典的库。怎么形容它的优秀呢?即使近两年流行了如 Vue 、 React 等众多热门的库,但对于封装方法、思想而言,这些库都不曾超越jQuery。因此,对于前端工程师而言,阅读 jQuery 源码是一…
  24. CSS pointer-events属性的使用 楔子 在前端的开发中,我们都是直接与用户接触,应该尽量让用户感到操作畅快愉悦,获得类似native的感觉。其中动画是最常用的方法。 这里的需求是,弹层的设计,这个弹层希望可以像 native 上的弹层一样,点击按钮出现,点击遮罩或按钮时关闭,并且出现和关闭时有
  25. 无单位数字和行高 —— 别说你懂CSS相对单位前段时间试译了Keith J.Grant的CSS好书《CSS in Depth》,其中的第二章《Working with relative units》,书中对relative units的讲解和举例可以说相当全面,看完之后发现自己并不太懂CSS相对单位,也希望分享给…
  26. WebView缓存原理分析和应用 一、背景 现在的App开发,或多或少都会用到Hybrid模式,到了WebView这边,经常会加载一些js文件(例如和WebView用来Native通信的bridge.js),而这些js文件不会经常发生变化,所以我们希望js在WebView里面加载一次之
  27. 前端每日实战:87# 视频演示如何用 1 个 DOM 元素和纯 CSS 创作一台对开门冰箱(深度应用线性渐变和径向渐变)效果预览 按下右侧的“点击预览”按钮可以在当前页面预览,点击链接可以全屏预览。 [链接] 可交互视频 此视频是可以交互的,你可以随时暂停视频,编辑视频中的代码。 请用 chrome, safari, edge 打开观看。 [链接] …
  28. Vuex 原理浅析笔记 vuex ::运用场景:根据项目规模判断:: 不能直接改变store,改变store唯一途径就是显示地提交mutations。这样使得我们可以方便跟踪每一个状态的变化,从而让我们实现一些工具帮助我们更好的了解我们的应用 state 单一状态书,用一个对象就包含
  29. 数独动态解题演示小网站 – 基于Vue/pixi.js/Flask 解数独不难,但如果能动态演示解题步骤就更好了。 参考:最难数独的快速解法 – python https://www.jianshu.com/p/1b2ee6539d4b 功能 读取公开网站的数独题目 或者手工输入数独题目 提交到后台,秒解 可以单步演示解题
  30. @angular/forms 源码解析之 Validators 我们知道,@angular/forms 包主要用来解决表单问题的,而表单问题非常重要的一个功能就是表单校验功能。数据校验非常重要,不仅仅前端在发请求给后端前需要校验数据,后端对前端发来的数据也需要校验其有效性和逻辑性,尤其在存入数据库前还得校验数据的有效性。

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

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


关注我

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

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

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