20190424 前端开发日报

前端小知识10点(2019.4.14);webpack基本使用;学习JavaScript中的“提升”;React的状态管理;web Audio 音频可视化;你应该知道的JS: reduce的n种应用;间歇性笔记–Vue组件间通信传值的各种方式;JavaScript中十种一步拷贝数组的方法

  1. 前端小知识10点(2019.4.14)1、React.PureComponent 与 React.Component 的区别React.PureComponent 与 React.Component 几乎完全相同,但 React.PureComponent 通过 prop 和 state 的浅对比来实现 shouldComponentUpate()React.Component:
  2. webpack基本使用 npm install webpack webpack-cli webpack-dev-server -D 复制代码 1.基本配置 webpack.config.js 当在项目中直接运行webpack时,默认读取webpack.config.js中的配置,等同于运行 webpack webpack.config.js const path = require('path'); const HtmlWebpackPlugin = require('html-webpack-plugin') //自动生成...
  3. 学习JavaScript中的“提升” 通过之前的文章,我们熟悉了作用域的基本概念。但是作用域中的变量,函数声明在什么地方查找,引用它们的时候又发生了什么。正是我们将要讨论的内容。 在我们的认知中 JavaScript 代码在执行的时候是由上到下一行一行执行的。但实际上并不完全正确。例如: a = 1; var a; console.log(a); 复制代码 按照我...
  4. React的状态管理 在MVC程序构架中,React经常被称为 View 层,但实际上并不完全是这样, React实际对MVC模式做了新的构想. 本质上React只是借助JSX语法实现的UI界面库,但是UI都需要数据来填充,所以问题就是如何获取数据,如何灵活的展现数据. MVC的思想 MVC架构的基本思想: 模型层(Model)就是数据层. 视图层(View)负责整个应用...
  5. web Audio 音频可视化 简单的录音功能已经实现了,在此基础上,实现下录音音频可视化。 createAnalyser 创建 可视化主要用到的是这个 方法 ,他返回的是一个录音分析节点。在录音时,只需要将节点connect上,我们就能拿到频率数据。 this.analyser = this.context.createAnalyser(); // 录音分析节点 this.analyser.fftSi...
  6. 你应该知道的JS: reduce的n种应用 reduce 是ES5中新引入的一个API。 假如你还不知道reduce的用法,请先阅读下MDN文档中关于reduce的介绍。(不得不说,MDN文档太强大了,里面列举了很多有用的方法) 本文将介绍借助reduce函数,利用其 能够遍历到数组的每一个元素,并且次遍历都可以使用上次遍历结果 的特性,实现的一些功能。 1.累和/...
  7. 间歇性笔记--Vue组件间通信传值的各种方式 一般情况下,组件间的通信传值分为三种情况: 父组件向子组件(跨级)通信传值; 子组件向父组件(跨级)通信传值; 兄弟组件间通信传值; 父组件向子组件(跨级)通信传值 使用prop传值,子组件使用 props 接受数据 parent.vue //部分代码省略--- <child :prop='data'> ...
  8. JavaScript中十种一步拷贝数组的方法JavaScript中我们经常会遇到拷贝数组的场景,但是都有哪些方式能够来实现呢,我们不妨来梳理一下。
  9. Vue源码学习: 关于对Array的数据侦听 我们都知道Vue的响应式是通过Object.defineProperty来进行数据劫持。但是那是针对Object类型可以实现, 如果是数组呢? 通过set/get方式是不行的。 但是Vue作者使用了一个方式来实现Array类型的监测: 拦截器。 核心思想 通过创建一个拦截器来覆盖数组本身的原型对象Array.prototype。 拦截器 通过查看Vue源码路...
  10. 使用JSDoc提高代码的可读性工作了四年多,基本上都在围绕着 JavaScript 做事情。 写的代码多了,看的代码也多了,由衷的觉得,写出别人看不懂的代码并不是什么能力,写出所有人都能读懂的代码,才是真的牛X。 众所周知, JavaScript 是一个...
  11. 彻底理解Node.js中的Buffer 每当在Node.js中遇到 Buffer , Stream 和 binary data 之类的单词时,是否总是像我一样感到困惑? 认为它们并不是常用的,而只适合Node.js专家和包开发人员去使用。 实际上,这些单词是非常重要的,尤其对于用Node.js进行web开发而没有任何CS学位的人员。 当然,如果你选择继续做一个普通的Node.js开发人...
  12. 10 个最受欢迎的 JavaScript 框架多年来,业界已经发布了大量 JavaScript 框架,怎样进行选择可能是一个挑战。如果你感到困惑,不知道应该选哪个或者究竟哪个适合你,那么我已经帮你解决了问题。在本文中,我将列出用来构建 Web 应用程序的前10个...
  13. 为什么 Node 是前端团队的核心技术栈 Scott 近两年无论是面试还是线下线上的技术分享,遇到许许多多前端同学,由于团队原因,个人原因,职业成长,技术方向,甚至家庭等等原因,在理想国与现实之间,在放弃与坚守之间,摇摆不停,心酸硬抗,大家可以找我聊聊南聊聊北,对工程师的宿命有更多的了解,有更多的看见与听见,Scott 微信: codingdream。 ...
  14. Rxjs建模入门 本文介绍如何使用 Rx 的响应式编程思维来对业务逻辑进行建模, 你会了解到响应式编程的优势和业务抽象能力, 学会将现有的业务流程以数据流的方式表达出来. 你的工具库中不能少了 Rx 这件利器. Rx 学习曲线陡峭是总所周知的, 我们接触的大部分编程语言或框架都是面向对象的. 在面对 Rx 这响应式编程的方式, 会觉得无从...
  15. 在同一基准下对前端框架进行比较(2019年更新)翻译:疯狂的技术宅[链接] 本文首发微信公众号:前端先锋欢迎关注,每天都给你推送新鲜的前端技术文章 这是我们第三次用 Real World example apps 对前端框架进行比较。 RealWorld example apps 为我们提供: Rea...
  16. javascript 原型、this、闭包、深拷贝 JavaScript只有一种结构:对象。 每个实例对象(object)都有一个私有属性(称之为__proto__)指向它的原型对象(prototype),层层向上直到一个对象的原型对象为 null , f ---> Function.prototype ---> Object.prototype ---> null Object.getPrototypeOf() 方法返回指定...
  17. 【面试篇】寒冬求职季之你必须要懂的原生JS(中)互联网寒冬之际,各大公司都缩减了HC,甚至是采取了“裁员”措施,在这样的大环境之下,想要获得一份更好的工作,必然需要付出更多的努力。
  18. AILearning:GitHub万星的中文机器学习资源,路线图、视频、电子书、学习建议全在这这套名叫AI Learning的GitHub资源,汇集了30多名贡献者的集体智慧,把学习机器学习的路线图、视频、电子书、学习建议等中文资料全部都整理好了。
  19. 手摸手教你用 js 写一个 js 解释器用 js 来 编译 js 看起来是个高大上的东西,实际原理其实很简单,无非就是利用 js 对象属性可以用字符串表示 这个特性来实现的黑魔法罢了。之所以看起来那么 深奥, 大概是由于网上现有的教程,都是动不动就先来个...
  20. HTTP缓存 - 强缓存/协商缓存/浏览器刷新Web缓存: 数据库缓存、服务器端缓存(代理服务器缓存、CDN 缓存)、浏览器缓存 浏览器缓存: HTTP 缓存、indexDB、cookie、localstorage 等等 HTTP缓存 强制缓存的优先级高于协商缓存 强缓存:命中缓存不需要和服...
  21. vscode-settings.json配置(prettier + eslint) command + p 搜索到settings.JSON文件,文件配置及注释如下 "workbench.iconTheme": "vscode-icons-mac", "editor.renderIndentGuides": false, "cSpell.ignoreWords": , //编辑器失去焦点时自动保存更新后的文件 "files.autoSave": &qu...
  22. React Hooks 解析(下):进阶React Hooks 是从 v16.8 引入的又一开创性的新特性。第一次了解这项特性的时候,真的有一种豁然开朗,发现新大陆的感觉。我深深的为 React 团队天马行空的创造力和精益求精的钻研精神所折服。本文除了介绍具体的...
  23. JS异步详解 - 浏览器/Node/事件循环/消息队列/宏任务/微任务一个 JavaScript 引擎会常驻于内存中,它等待着我们把JavaScript 代码或者函数传递给它执行
  24. JavaScript对象之数据属性与访问器属性 首先介绍了 JavaScript 对象数据属性与访问器属性的相关概念,然后介绍了属性定义与读取的相关方法,最后对 JavaScript 对象数据属性与访问器属性的知识做了一些扩展。 一. 创建JavaScript对象 创建 JavaScript 对简单的方法有两种:一是直接创建一个 object 实例,然后为他添加属性与方法,二是通过...
  25. 写给前端的Python依赖管理指北在Python的项目中,我们可以通过pip来安装依赖包,但是不像npm install,pip默认安装的依赖包会挂在全局上,不利于项目工程协作。
  26. react生成二维码的插件插件: qrcode.react 用法: 1. 安装 {代码...} 2. 使用: {代码...} {代码...} 属性及用法:
  27. 深入浅出 Vue 系列 -- 数据劫持实现原理   数据双向绑定作为 Vue 核心功能之一,其实现原理主要分为两部分: 数据劫持 发布订阅模式   本篇文章主要介绍 Vue 实现数据劫持的思路,下一篇则会介绍发布订阅模式的设计。 二、针对 Object 类型的劫持   对于 Object 类型,主要劫持其属性的读取与设置操作。在 JavaScript 中对象的属性主要由一...

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

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

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