• Stars
    star
    778
  • Rank 58,431 (Top 2 %)
  • Language
  • Created over 9 years ago
  • Updated over 5 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A learning guide for JavaScript programmers.

Table of Contents

Awesome JavaScript

JavaScript是一个仅在一周就被发明出来的小玩意, 所以,它有着有多的缺陷,即使是这样,它已经存在了20年,全世界几乎每台电脑都至少装有一个JavaScript解释器, 况且今天这个当初的小玩意的目标是编写大型的企业应用。如果你对JavaScript的理解仅限于DOM操纵,页面动画,jQuery等等, 本列表将为你展现JavaScript的更多的令人震撼的功能。

专题列表

基础

开发准备

  1. 安装 Node.js
  2. 安装 PhantomJS - 没有界面的浏览器
  3. 安装 Python27 (Node有些模块对Python有依赖)
  4. 安装 Git
  5. 编辑器 WebStormVisual Studio Code

推荐的书

源代码阅读

敏捷方法与工具

  1. 持续集成与部署

  2. 敏捷相关的几个概念

    • Scrum: Scrum Guide
    • TDD: Test-Driven Development by Example (book)
    • Pair Programming

Web安全

  1. 跨站脚本攻击 - XSS
  2. 跨站请求伪造 - CSRF
  3. SQL注入
  4. 拒绝服务 - DDoS
  5. An Introduction to Content Security Policy
  6. More: Web Application Security Testing Cheat Sheet
  7. JavaScript Beginners: Friendly Intro & Exercises

JavaScript

核心基础语法点

核心概念

  1. Functional Programming 函数式编程
  2. Prototyped-based OOP 基于原型的面向对象编程
  3. Async/Concurrent Programming 异步/并发编程

关键知识点

Other topics

  1. 日期和时间字符串
  2. 处理Cookies
  3. Promise
  4. JavaScript与有限状态机
  5. Fetch API
  6. 什么是shims和polyfills
  7. 严格模式
  8. ES5增加的新特性
  9. ES6基本介绍
  10. JavaScript的模块化进程
  11. Command Line API参考手册

ECMAScript 2015 (ES6)

阅读材料

  1. Understanding ES6 by Nicholas C.Zakas
  2. Exploring ES6 by Axel Rauschmayer

语法转换 ES6 to ES5

  1. Babel - 推荐!杀手级特性"human-readable output"
  2. Traceur
  3. Babelify: 将babel引入到Gulp, Grunt, npm run等构建过程
  4. A Brief History of ES6 Tooling

入门

  1. Learn ES2015
  2. ES6 - New features Overview & Comparison
  3. ES6 Overview in 350 Bullet Points
  4. 百度EFE:使用ES6进行开发的思考
  5. ES6 Features

其他

  1. ES5/ES6 compatibility table
  2. ES6 Cheatsheet

Node.js

图书

  1. Node.js In Action
  2. 深入浅出Node.js

开发实践

基础知识

  1. NODE_PATH

垃圾回收

  1. A tour of V8: Garbage Collection | CHN
  2. Top Node.js metrics to watch
  3. Goole V8的垃圾回收
  4. 浅谈V8引擎中的垃圾回首机制

性能对比

  1. Performance Comparison Between Node.js and Java EE
  2. Java EE threads vs Node.js - which is better for concurrent data processing operations
  3. What Makes Node.js Faster Than Java

最佳实践

  1. Node.js最佳实践:第一部分
  2. Node.js最佳实践:第二部分

风格指南

  1. Node.js风格指南(中文)

常用的Node Web框架

  1. 传统的Node框架:Express
  2. 下一代Node.js框架:Koa
  3. 专注于构建可重用的应用逻辑:Hapi
  4. 其他Node框架

常用NPM工具模块

感兴趣的可以参考NPM中被依赖次数最多的模块列表

  1. JS工具函数库:lodash
  2. JavaScript编写同步代码辅助工具包:async
  3. 精简版HTTP请求客户端:request
  4. 配置管理工具包:nconf
  5. 基于生成器的控制流管理工具包:co
  6. 轻量级模块调试工具:debug
  7. 构建请求: superagent
  8. 辅助测试工具:Sinon.js

调试、性能与安全

  1. Node.js的代码调试和性能调优
  2. Node.js安全清单
  3. Debug with Source Maps
  4. 雅虎: 网站性能优化建议

开发工具和库

对于前端开发而言,如果你需要查找一些库或框架来帮你解决问题, 下面两个网站可能会帮助你选择:

  1. JavaScripting.com
  2. JavaScriptOO

借助上面的两个网站,你能够迅速的找到相关的工具。你还可以参考这篇文章来了解JavaScript必备的工具和库。 下面会继续列举一些常用的工具、库、或框架:

  1. 版本控制

  2. 自动构建

  3. 代码质量

  4. 前端工具

  5. 文档生成

  6. 工具库

  7. UI框架

  8. 前端框架

  9. 可视化库

  10. 模块系统和包管理器

  11. 单元测试

  12. 代码衡量

    High code coverage means lower chances for your program to contains bugs.

  13. 实时应用

  14. 单页应用SAP

  15. 函数式JavaScript

  16. 模版引擎

  17. 前端资源CDN服务:

Future

很遗憾,这里只能列举一些常用的资料,但幸运的是,互联网极大便利了我们获取信息的方式, 下面几个链接或许是你正在寻找的:

  1. Frontend Rescue - 帮助你获取前端资源
  2. JSbooks - 帮助你寻找和JS相关的书
  3. Cooper Press 订阅

Other links

  1. JavaScript Training Sucks
  2. The Two Pillars of JavaScript: part one - how to escape the 7th circle of hell