七个 JavaScript 实用小技巧

2019-05-03
阅读 3 分钟
4.1k
和许多其他语言一样,JavaScript 也需要靠很多小技巧去完成各种不同的事情。有的可能早已经广为人知,有的却可能会让你感到有些迷惑。接下来先介绍七个马上就能用起来的 JavaScript 小技巧。

如何将 emoji 当成单色 icon 使用

2018-07-01
阅读 3 分钟
3.5k
在 web 设计中 icon 变得越来越重要,在网上有很多关于 icon 的资源,免费的付费的都有。在这里,介绍如何运用一种已经我们非常熟悉的方式 -- emoji ,来当成 icon 使用。

在 web 上使用 JavaScript 模块

2018-06-28
阅读 9 分钟
3k
现在 所有主流现代浏览器都已经支持 JavaScript 模块。本文将介绍如何使用 JS 模块,如何有效地部署,以及 Chrome 团队如何使 JS 模块在未来变得更好用。

从零开始写一个 Promise 库

2018-04-15
阅读 7 分钟
2.8k
Promise 已经是 JavaScript 中异步处理的基石,回调的场景将会越来越少,而且现在可以直接在 Node.js 使用 async/await。async/await 基于 Promise,因此需要了解 Promise 来掌握 async/await。这篇文章,将介绍如何编写一个 Promise 库,并演示如何使用 async/await。

魔幻语言 JavaScript 系列之类型转换、宽松相等以及原始值

2018-04-11
阅读 7 分钟
3.9k
编译自:[1] + [2] – [3] === 9!? Looking into assembly code of coercion.全文从两个题目来介绍类型转换、宽松相等以及原始值的概念: [1] + [2] – [3] === 9 如果让 a == true && a == false 的值为 true 第二道题目是译者加的,因为这其实是个很好的例子,体现出 JavaScript 的魔幻之处

魔幻语言 JavaScript 系列之 a == true && a == false

2018-04-03
阅读 5 分钟
2.8k
JavaScript 是一门类型松散的语言,在使用 == 进行比较时,倘若左右类型不一致,是会进行类型装换的。首先来了解一下宽松相等的概念,

React 整洁代码最佳实践

2017-12-01
阅读 8 分钟
4.6k
整洁代码代表的是一种一致的编码风格,目的是让代码更易于编写,阅读和维护。通常情况下,开发者在解决问题的时候,一旦问题解决就发起一个 Pull Request(译注:合并请求,在 Gitlab 上叫 Merge Request)。但我认为,这时候工作并没有真正完成,我们不能仅仅满足于代码可以工作。

魔幻语言 JavaScript 系列之 call、bind 以及上下文

2017-11-09
阅读 4 分钟
2.1k
一开始,我觉得这是一个“不错的尝试”。但是,印象中 map 好像只接受一个参数,这里却出现第二个参数,所以去查看了 MDN文档,才知道可以传一个上下文(context)作为第二个参数。在这时候,我还无法解释这段代码,运行完之后感到更加困惑了,因为它竟然能如预期那样工作。

编写扁平化的代码

2017-11-02
阅读 7 分钟
1.9k
最近我对函数式编程非常感兴趣。这个概念让我着迷:应用数学来增强抽象性和强制纯粹性,以避免副作用,并实现代码的良好可复用性。同时,函数式编程非常复杂。

ES6 Promise:模式与反模式

2017-09-29
阅读 8 分钟
2.8k
当几年前,第一次使用 NodeJS 的时候,对现在被称为“ 回调地狱 ”的写法感到很困扰。幸运的是,现在是 2017 年了,NodeJS 已经采用大量 JavaScript 的最新特性,从 v4 开始已经支持 Promise。

Redux 的问题:React、MobX 和 Realm 能解决吗?

2017-09-22
阅读 3 分钟
2.4k
首先,我不讨厌 Redux。它是由一个 非常聪明的人 开发的,用来缓解在单页面应用中管理状态的问题。而且,确实解决了这个问题。你可以使用 Redux 将状态从高层的 store 连接到每个组件,只 map 该组件需要用到的状态。

在 Node.js 中使用原生 ES 模块

2017-09-13
阅读 2 分钟
2.9k
原文:Using ES modules natively in Node.js 作者:Axel Rauschmayer 从版本 8.5.0 开始,Node.js 开始支持原生 ES 模块,可以通过命令行选项打开该功能。新功能很大程度上得归功于 Bradley Farias。 1.演示 这个示例的代码目录结构如下: {代码...} lib.mjs: {代码...} main.mjs: {代码...} 运行演示: {代码...} 2....

在工作中学习

2017-09-02
阅读 3 分钟
2.3k
原文;Learning at work 作者:Julia Evans 谈点:学习是一件没有尽头的事,虽然在工作中很多时候被淹没在没玩没了的需求里面,加班是常态,或许很多人不知不觉放弃学习的心思。这篇文章中提到的一些方法我很赞同,很多点也是我的做事方式,这里也希望所有人都能找到适合自己的学习方式。

JavaScript 中的匿名递归

2017-08-09
阅读 2 分钟
3k
原文:Anonymous Recursion in JavaScript 作者:Simeon Velichkov {代码...} 是的,这就是想要分享给大家的一个有趣的示例。这个例子包含以下特性:闭包),自执行函数,箭头函数,函数式编程 和 匿名递归。 你可以复制粘贴上述代码到浏览器控制台,会看到打印结果如下: {代码...} 说到函数式编程,这里有一个使用 Sche...

面向初学者的高阶组件介绍

2017-07-19
阅读 6 分钟
6.2k
作者:Brandon Newton 原文:Higher-Order Components (HOCs) for Beginners 谈点:一篇面向初学者的 HOC 介绍。高阶组件听起来挺唬人的,只看名字恐怕不是那么容易明白究竟是何物,而且通常来讲高阶组件并不是组件,而是接受组件作为参数,并且返回组件的函数。早期利用 ES5 的 mixin 语法来做的事,基本都可以使用高阶...

CSS Animations vs Web Animations API

2017-06-26
阅读 5 分钟
7.1k
在 JavaScript 有一个原生动画 API 叫 Web Animations API,在这篇文章中简称为 WAAPI。MDN 上已经有 很好的文档,而且,Dan Wilson 为此写了 一个很棒的文章系列。

JavaScript 异常的防范与监控

2017-06-21
阅读 4 分钟
4.2k
一套完善的前端体系应少不了异常统计与监控,即使有足够的质量保证体系,难免会出现一些意料之外的事,尤其是在复杂的网路环境和运行环境之下。为了保证代码的健壮性以及页面的稳定性,我们从多个方面来做异常的防范和监控。

喜欢用 Git 做的一些小事

2017-06-12
阅读 5 分钟
6k
作者:@csswizardry 原文:Little Things I Like to Do with Git 随便说点:这篇文章主要从管理者的角度谈论了使用 git 的心得,使用大量篇幅介绍 git log 的一些方法和技巧。 同样地,发现很多人其实并没有深入全面地去了解过 git 的用法,作为一名开发人员,大多数时候只要会使用 git pull,git add,git commit,git ...

移除 ES Modules 下的严格模式

2017-06-05
阅读 2 分钟
14.4k
项目升级构建方式,以前的代码采用 AMD 风格组织代码,并使用 r.js 完成打包优化工作。后续成员选择采用 ES6 的风格编写代码,然后 webpack + babel 完成打包构建。迁移工作并不如想象中那么容易,终于完成各种配置,测试时候发现问题:抛出一个语法错误。错误很快被定位,属于历史代码的不规范写法,之所以现在暴露出来...

编写现代 JavaScript 代码

2017-06-02
阅读 4 分钟
4.9k
原文作者:Sébastien Castiel 原文链接:Writing modern JavaScript code 说点什么:这是一篇很朴素的文章,讲的道理都懂,但实际上,在工作中遇到类似的情形却未必如此,编写可维护,可阅读,更安全的代码是我们应有的责任。

JS/React 开发者的 Atom 终极配置

2017-05-30
阅读 3 分钟
16.6k
根据多年以来不断完善 Sublime Text 配置的经验,决定这次给 Atom 也来一个大改造。这个过程花费了好几个月的时间,但成果还是很卓有成效的,我现在非常满意这份配置。

JavaScript 模块化现状

2017-05-29
阅读 7 分钟
6.6k
最近 在 twitter 上有很多关于 ES Module 现状的讨论,尤其是在 Node.js 上,他们计划引入新的文件扩展名 *.mjs。人们有足够理由对此感到 担忧和不确定,因为这个话题异常复杂,接下来会尽力阐述清楚问题。

使用 ES6 的浏览器兼容性问题

2016-05-15
阅读 7 分钟
72.3k
以前对浏览器兼容性问题只是大概知道一些点,没想到这次真正着手去做的时候,还是碰到了很多问题。刚开始的时候一边解决问题,一边想着:用 IE8 的都是神经病,到后来,我发现完了,I LOVE IE。

为什么是 JSONP

2016-04-17
阅读 5 分钟
12.7k
在 WEB 开发中,经常见到诸如 AJAX、JSON、JSONP 这些名词。三者看起来很像,很多同学尤其是没有系统了解过前端技术体系的同学,平常只是借助类似 JQuery 这类库封装好的函数使用而已,并不了解其原理。但这三种东西具体是什么,有什么关系和区别却常常说不清楚。

康威生命游戏的简单实现

2014-09-16
阅读 5 分钟
13.6k
康威有许多好玩有趣的发明,最广为人知的一个是外观数列(Look-and-Say),这里不多说,另一个就是生命游戏(Game-of-Life)。