CommonJS规范简介
在ES6之前,JavaScript语言一直缺乏语言级别的模块化机制,这促使了CommonJS、AMD的项目的诞生与发展。
模块化要解决的基本问题包括:
- 全局命名空间污染。所谓污染是指属于库/框架的实现细节的变量/函数暴露为全局变量,导致可能的意外覆盖发生
- 按需加…
Webpack学习笔记
Webpack是用来在应用程序中构建JavaScript模块的工具,它能够快速的构造出应用程序的依赖图,并且按照正确的顺序将它们捆绑(bundling)在一起。Webpack还支持根据配置进行代码最优化。你可以通过命令行工具、API两种方式来使用Webpa…
阅读全文使用ESLint进行代码检查
ESLint是一个用于ECMAScript/JavaScript、JSX的可拔插设计的代码检查工具(linting utility),可以对代码风格进行检查,并发现潜在的BUG。ESLint类似于JSLint或者JSHint,但是:
- ESLint使用Es…
React学习笔记
你可以基于React创建一个新的工程,或者为现有工程添加React支持。
要开始一个新的、单页面应用,Create React App是很好的起点。该模块能够创建一个没有构建配置的React应用:
1 2 3 4 5 6 7 |
# 安装此模块 npm install -g create-react-app # 创建一个React应用 create-react-app ReactStudy cd ReactStudy/ # 在3000端口启动一个Web服务,并自动打开浏览器 npm start |
命令create-react-app不会处理后端逻辑或者数据库,它仅仅创建一个由webpack、Babel、ESLint构成的前端…
阅读全文使用Babel进行JS转码
Babel是一个广泛使用的JavaScript语法转换器(syntax transformer),它可以将ES6编译为更被广泛支持的ES5,以便在浏览器中运行。
默认的,Babel仅仅进行语法的转换,为了支持ES6中大量新的API,需要使用Babel的垫…
阅读全文ECMAScript6学习笔记
ECMAScript6发布于2015年,是下一代ECMAScript的标准。当前ES6的支持情况如下:
- 最新的浏览器:Chrome 54、Opera 41、Safari 10、Firefox 50、Edge 14、iOS 10等已经支持ES6的大部分特性…
Sencha Cmd学习笔记
Sencha Cmd是一套跨平台的命令行工具,用于支持整个ExtJS开发的生命周期。它包含以下功能:
- 代码生成工具:可以生成整个应用程序,并且使用MVC模式扩展应用程序
- JS编译器:此编译器理解Sencha的ExtJS/Touch框架,可以减少应用程序加载…
使用Chrome开发者工具分析内存泄漏
从用户角度来看,Web应用内存问题可以表现为以下几种形式:
问题形式 | 症状 |
内存泄漏 |
页面的性能随着运行时间的增加越来越差,这是因为页面消耗越来越多的内存 内存消耗量和性能呈负相关的原因包括:
|