20200413 前端开发日报

JavaScript系列: 一、手撕JS中的深浅拷贝;利用CSS变量进行黑暗模式切换;Vue 组件通信的几种方式汇总;手写 Promise 符合 Promises/A+规范;因为两位志愿者来自伊朗,GitHub 封禁了一个开源项目;[推荐] Web 前端崩溃监控优化历程;W3C 标准、 ECMAScript 规范与JavaScript 什么关系 ?;angular事件深入

  1. JavaScript系列: 一、手撕JS中的深浅拷贝

    对象、数组、函数 数据类型不是本文重点, 重点是实现深浅拷贝 下面是要copy的对象, 之后的代码都会直接使用$obj, 之后不会再次声明 // lmran var $obj = { func: function () { console.log(‘this is function’) }, date: new Date(), symbol: Symbol(), a: null, b: undefined, …

  2. 利用CSS变量进行黑暗模式切换

    利用CSS变量进行黑暗模式切换 本文以react为例。 用css变量来切换黑暗模式,易于维护和扩展。 css变量的用法: {代码…} 方案一 设置主题对应的CSS变量,切换主题只需切换css属性的变量值。例如:切换APP元素的…

  3. Vue 组件通信的几种方式汇总

    Vue 组件间通信主要有 3 类通信:父子组件通信、隔代组件通信、兄弟组件通信。 Github 地址 props/$emit 父子组件通信 父组件向子组件传递数据是通过 props ,子组件向父组件传值是通过 events($emit) (事件形式)。 父组件向子组件传值 父组件 Parent: <template> <div> <chil…

  4. 手写 Promise 符合 Promises/A+规范

    异步编程是前端开发者必需的技能,过去管理异步的主要机制都是通过函数回调,然而会出现像“回调地狱”这样的问题。为了更好的管理回调,ES6 增加了一个新的特性 Promise。Promise 是 ES7 中 async/await 语法的基…

  5. 因为两位志愿者来自伊朗,GitHub 封禁了一个开源项目

    「 你们听说了吗,因为开发者有两个伊朗人, GitHub 把 Aurelia 封了 」。 「 理由呢?」「 贸易禁令呗 」。 啧啧,又开始了。 可能有人得问了,Aurelia 是个啥啊? 实际上,Aurelia 是一款还算流行的前端框架,是程序员们在制作网页时经常会用到的玩意。 打个比方的话就是,我们平常做 P…

  6. [推荐] Web 前端崩溃监控优化历程

    某天产品经理,在群里吐槽,自己打开自家的网站,浏览器崩溃了。然后又有人运营跟着评论,说某天也遇见了这种情况。这个时候 HR 也跳出来说面试的候选人也说遇到过这种情况。似乎这个时候,无论我们自己的电脑怎样,但是这个问题就必须有结论。 *前端不想看到的崩溃界面* 确定问题 其实大家日常在开发的时…

  7. W3C 标准、 ECMAScript 规范与JavaScript 什么关系 ?

    在前端知识体系中,我是把 Web 标准放在第 1 位的。对于初学者,可能会对 W3C、ECMAScript 和 JavaScript 的内容和关系搞不清楚,这里简单为大家梳理一下。 什么是标准?标准制定后可以告知负责实现该技术的程序员,有哪些特性是必须提供的,以及它们应该如何实现。比如由 W3C (World Wide Web Consortium) 制定…

  8. angular事件深入

    事件可以理解为行为,如对button的点击,事件的本质是一个函数,他接收一个event对象。每个事件会产生一个Event对象,Event 对象代表事件的状态,比如事件在其中发生的元素、键盘按键的状态、鼠标的位置、鼠标按…

  9. 作为 attribute 和 property 的 value 及 Vue.js 的相关处理

    attribute 和 property 是 Web 开发中,比较容易混淆的概念,而对于 value,因其特殊性,更易困惑,本文尝试做一下梳理和例证 attribute 和 property 的概念 简单的说,attribute 是元素标签的属性,property 是元素对象的属性,例如: <input id="input" value="test value"> <script&…

  10. WebRTC 实时通信

    Real-Time Communication with WebRTC 中文翻译。

  11. 从零开始实现数组方法来学习JavaScript,编码面试题

    本文将介绍一些JavaScript数组问题,通过从零开始实现数组方法来学习更多关于JavaScript数组的知识,并练习使用它们进行常见的操作。 手动实现Array.prototype.map方法 Array.prototype.map 方法通过调用一个回调函数来进行映射,从而将每个数组项映射到新的项。它返回一个带有映射值的新数组。使用如下 let …

  12. 厉害了每30秒学会一个Python小技巧,Github星数4600+

    很多学习Python的朋友在项目实战中会遇到不少功能实现上的问题,有些问题并不是很难的问题,或者已经有了很好的方法来解决。当然,孰能生巧,当我们代码熟练了,自然就能总结一些好用的技巧,不过对于那些还在刚…

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


关注我

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

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

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