20190713 前端开发日报

面试必问之JSONP;vue中8种组件通信方式, 值得收藏;vue项目实现缓存的最佳方案;Web 视频格式简明指南;2019年,常用的7个对开发者有用的JavaScript工具;码住史上最详尽的 Git 分支管理实践;再谈:JavaScript 中的对象是如何进行类型转换的?;聊聊promise你不会注意的点

  1. 面试必问之JSONP 个人笔记,暂时没有附带源代码,见谅。 第一部分阐述什么是JSONP,附带面试题一个。 第二部分是发展历程,img法,script法,JSONP法。没有源代码阅读会笔记困难,再次见谅。 第三部分随笔记录一些基础知识。 JSONP 请求方:frank.com 的前端程序员(浏览器) 响应方:jack.com 的后端程序员(服务器) …
  2. vue中8种组件通信方式, 值得收藏 之前写了一篇关于vue面试总结的文章, 有不少网友提出组件之间通信方式还有很多, 这篇文章便是专门总结组件之间通信的 vue是数据驱动视图更新的框架, 所以对于vue来说组件间的数据通信非常重要,那么组件之间如何进行数据通信的呢? 首先我们需要知道在vue中组件之间存在什么样的关系, 才更容易理解他们的通信方式, 就…
  3. vue项目实现缓存的最佳方案 在开发vue的项目中有遇到了这样一个需求:一个视频列表页面,展示视频名称和是否收藏,点击进去某一项观看,可以收藏或者取消收藏,返回的时候需要记住列表页面的页码等状态,同时这条视频的收藏状态也需要更新, 但是从其他页面进来视频列表页面的时候不缓存这个页面,也就是进入的时候是视频列表页面的第一页 …
  4. Web 视频格式简明指南网络视频一直都很火。虽然在页面上嵌入 Instagram 和 Youtube 视频非常简单,但是有越来越多的需求 —— 比如许多电子商务的场景 —— 要求定制的视频传输方法。
  5. 2019年,常用的7个对开发者有用的JavaScript工具 每个人都知道JavaScript,因为它是一种强大的客户端脚本语言,用于许多现代网站和Web应用程序。JavaScript通常很难编写,因为它运行的环境是:Web浏览器。下面我收集了11个有用的和最好的JavaScript工具来帮助您简化开发任务。下面的JavaScript工具将使您加快编码过程,并帮助您在特定的期限内获得所需的结果。 1…
  6. 码住史上最详尽的 Git 分支管理实践 Linux & Git 被称为 Linus Travis 的两大神作, 实至名归! 在谈 Git 之前, 先谈一下 Linux。 Linux 和 Windows 作为两个广泛使用的操作系统, 有着极大的差异, 在各种广泛的评价和争执中, 我对下面的评价十分赞同 : Linux 与 Windows 最本质的区别在哪里。有人会说前者免费,后者需要…
  7. 再谈:JavaScript 中的对象是如何进行类型转换的? 最近我读了 GitHub 上的一个仓库项目 《What the f*ck JavaScript?》 ,列举了 JavaScript 语言上比较怪癖的一些特性。东西比较多,看起来也有点杂。 其中有相当一部分内容涉及到类型转换—— 如果根据转换形式分的话:分隐式和显式的 // 1. 隐式转换:Shi用 `==` 运算符比较 [] == 0 // -> true // 2…
  8. 聊聊promise你不会注意的点 想必大家在项目中会见过这样的写法。 const p1 = new promise((resolve, reject) => { resolve(true); }) p1.then((res) => { if(res) { const p2 = new promise((resolve, reject) => { resolve(true); }) p2.then((res) => { const p3 = new p…
  9. 前端谈后台管理系统 大概是在15年7月份开始做一个后台管理系统,用的是老一套php+jquery,前端也没有工程化的东西。慢慢的在我们开发的过程中遇到了问题,前后端太耦合。一个html模板,前端用到他,后端php渲染也会用到,很容易导致出现各种意外。对开发效率有很严重的影响,所以我们决定前后端分离。前后端分离意味着之前php渲染的东西由前…
  10. 用原生 JavaScript 实现十大 jQuery 函数 作者:Omar Duarte 翻译:疯狂的技术宅 原文: devkisslist.com/2019/06/29/… 未经允许严禁转载 在本文中我将把自己最常用的 jQuery 函数转换为原生 JavaScript。 有时我需要创建一个简单的静态 HTML 或登录页面,而且不想引入任何库或其它依赖。对这种情况,我只使用普通的 JavaScript 来完成工作,…
  11. 来看各种加密算法在 nodejs 里的实现 在大前端的趋势下,前端er也要懂点数据加密相关的知识才行,加密算法的实现和原理我们可以不用深究,毕竟加密是一门高深的学科,但是基本的加密方式和编码还是要掌握的,毕竟没吃过猪肉,猪跑还是见过的嘛。 我对常见的几种加密和签名的算法做个归纳,同时附上 nodejs 的编码实现。 加密算法 为了保证数据的安…
  12. 微前端改造初探 在写这篇文章的一个多月前,本坑还不知道微前端是什么,大概从字面上的含义是比较小的前端项目。 本坑开始实践它,是由于工作要求。改造一个运行多年,前端用jsp写的服务平台项目(以下简称该平台)。改造它是改造它的前端架构。改造它的原因是比较多人反馈,其页面加载和渲染显得吃力,页面切换后首屏等待时间长的问…
  13. 纯css实现开关效果我们使用<input type=”checkbox”>标签来实现这个效果。checkbox的选中、未选中的特性,刚好对应开关的打开、关闭on:打开 off:关闭
  14. JS-类型 目前为至,js中共有8种数据类型(data type),分别是 基本数据类型(primitive data type) Undefined Null(引用类型) Boolean Number BigInt String Symbol 复杂数据类型 Object Function(值类型) Array Date RegExp …… …
  15. js使用AES加密PHP使用Openssl解密最近遇到的几个网站在提交密码时提交的已经是密文,也就是说在网络上传输的密码是密文,这样提升了密码在网络传输中的安全性。
  16. HTML5 Canvas转化成图片后上传服务器 function b64ToUint8Array(b64Image) {    var img = atob(b64Image.split(‘,’) );    var img_buffer = [];    var i = 0;    while (i < img.length) {       img_buffer.push(img.charCodeAt(i));       …
  17. React 项目从JavaScript 到 TypeScript 的无痛迁移 TypeScript其与JavaScript的区别是提供的静态类型系统,一些错误可以再编译阶段尽早的发现和解决,提高了代码的健壮性,增强了代码的可读性以及可维护性, 动态类型一时爽 代码重构火葬场 之前很流行的一句话也可以很好的解释他们的区别,也正式这个原因开始把既有项目迁移到TypeScript 语言上来。 了解 TypeS…
  18. 前端埋点 – 报错监控 说起埋点又到了谈起前端项目中数据收集与监控,那么今天来简单的聊下前端报错监控的埋点。 首先先安利下自己做的报错监控的项目 FE-Monitor 欢迎 issue 和 star 。 首先我们可以看下前端做报错监控的意义在哪里: 帮助灰度测试发现问题 收集线上错误日志 帮助优化产品稳定性 收集错误数据用于分析 监控…
  19. webpack使用总结 – ES6、模块热替换 在实际的开发中,不会每次改下代码,然后再手动的打包、手动刷新页面,这样太麻烦了,webpack也是支持自动打包及刷新页面的。 webpack-dev-server可以自动的打开页面、自动的打包、自动的刷新、所以在项目中一般采取这种方式。 安装: yarn add webpack-dev-server 在package.json中增加: "scripts&quot…
  20. 使用vue for时为什么要key 前言:用vue框架写前端代码时经常会用用到v-for这个方法,但使用此方法时vue推荐我们加上一个唯一标识key这是为什么呢?阅读了网上各位大神的文章以及自己的一些理解对这个问题有了新的认识。所以记录下来,若各位看官看到文章里面有错误的地方请指正一下。谢谢各位大佬。 一.diff算法 修改渲染真实的dom会引起整个…
  21. Vue项目减肥之旅(前端项目体积精简的几种方法) P.S. 本文同时适用于:使用webpack打包的项目。 俗话说得好,引用依赖一时爽,一直引用一直爽。 在开发项目的过程中,我们往往需要引用到大量的第三方模块(node modules)。确实,通过引用第三方模块,能大大的简化开发的过程,提高工程质量。但难免的,也带来了“体积”这个问题。笔者曾经开发过一个简单的网站项目,…
  22. es6 7个比较有用的技巧有时我们需要过滤数组中值为 false 的值. 例如(0, undefined, null, false), 你可能不知道这样的技巧
  23. 深入剖析Vue源码 – 响应式系统构建(下) 在 深入剖析Vue源码 – 数据代理,关联子父组件 这一节中,已经详细介绍了 vue 数据代理的技术是利用了 Object.defineProperty ,有了 Object.defineProperty 方法,我们可以方便的利用存取描述符中的 getter/setter 来进行数据的监听,在 get,set 钩子中分别做不同的操作,达到数据拦截的目的。然而 Object.defineProperty…
  24. 一篇文章教你如何捕获前端错误 随着前端页面承载功能越来越多,用户本地浏览器环境也错综复杂,因此即使有完善的测试,我们也无法保证上线的代码不会出错。在这种场景下,前端页面的监控就成了各个web项目必备的工具。 一般对页面的监控包含页面性能、页面错误以及用户行为路径获取上报等。 而本文将重点关注其…
  25. 前端之路:RN拆包demo(js部分) 我不懂原生,只做 js 部分,有懂这方面的大佬,也可以补充原生部分,git地址: github.com/Mr-jiangzhi… 环境: macOS: 10.14.4; node(nvm): 10.15.3; react-native-cli: 2.0.1; react-native: 0.60.0; 目录结构 . ├── .babelrc ├── .buckconfig ├── .editorconfig ├── .eslintrc.js ├── .flowconfig ├── …
  26. CSS水平或垂直居中技巧css水平和垂直居中是一个亘古不变的话题,它常常出现在优美的网页上以及各大前端面试当中。说来惭愧,在两年前面试的时候,我完全不知道如何做到水平和垂直均居中的方法,那场面别提有多尴尬了(ps:特想找个地洞…
  27. 最新:Lodash 严重安全漏洞背后你不得不知道的 JavaScript 知识可能有信息敏感的同学已经了解到:Lodash 库爆出严重安全漏洞,波及 400万+ 项目。这个漏洞使得 lodash “连夜”发版以解决潜在问题,并强烈建议开发者升级版本。
  28. 笔记:把本地的文件夹和远程的 git 仓库关联并推送常常有一个问题是:本地有一个文件夹(可能是脚手架程序生成的,也可能是自己最近的重要资料),里面存了一堆文件,如何推送到远程仓库呢?

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

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


关注我

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

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

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