[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-3274":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":16,"stars7d":16,"stars30d":17,"stars90d":16,"forks30d":16,"starsTrendScore":16,"compositeScore":18,"rankGlobal":10,"rankLanguage":10,"license":10,"archived":19,"fork":19,"defaultBranch":20,"hasWiki":21,"hasPages":19,"topics":22,"createdAt":10,"pushedAt":10,"updatedAt":25,"readmeContent":26,"aiSummary":27,"trendingCount":16,"starSnapshotCount":16,"syncStatus":28,"lastSyncTime":29,"discoverSource":30},3274,"node-lessons","alsotang\u002Fnode-lessons","alsotang",":closed_book:《Node.js 包教不包会》 by alsotang","",null,"JavaScript",16450,4621,1090,84,0,3,45,false,"master",true,[23,24],"javascript","nodejs","2026-06-12 02:00:48","# 《Node.js 包教不包会》 -- by alsotang\n\n## 注意\n\n本书写成于 2015 年，其中的某些最佳实践或许已经发生变化。比如异步处理应更多使用 `Promise` 与 `await\u002Fasync`，但本书未有提及。由于 js 一直向后兼容，所以本书中的内容仍然可以正常在生产环境中使用。\n\n## 为何写作此课程\n\n\n在 CNode(https:\u002F\u002Fcnodejs.org\u002F) 混了那么久，解答了不少 Node.js 初学者们的问题。回头想想，那些问题所需要的思路都不难，但大部分人由于练手机会少，所以在遇到问题的时候很无措。国内唯一一本排的上号的 Node.js 书是 @朴灵(https:\u002F\u002Fgithub.com\u002FJacksonTian) 的 《深入浅出Node.js》(http:\u002F\u002Fbook.douban.com\u002Fsubject\u002F25768396\u002F )，但这本书离实战还是比较远的。\n\n这个课程是希望提供更多的 Node.js 实战机会，通过每一节精心安排的课程目标，让 Node.js 的初学者们可以循序渐进地，有目的有挑战地开展 Node.js 的学习。\n\n## 广告\n\n**需要内推腾讯的同学请参照此贴：** https:\u002F\u002Fcnodejs.org\u002Ftopic\u002F58351689bde2b59e06141e9f\n\n更多 Node.js 入门资料请前往：https:\u002F\u002Fcnodejs.org\u002Fgetstart\n\n新手搭建 Node.js 云主机，推荐使用无需备案的 [DigitalOcean(https:\u002F\u002Fwww.digitalocean.com\u002F)](https:\u002F\u002Fwww.digitalocean.com\u002F?refcode=eba02656eeb3)\n\n## 课程列表\n\n* Lesson 0: [《搭建 Node.js 开发环境》](https:\u002F\u002Fgithub.com\u002Falsotang\u002Fnode-lessons\u002Ftree\u002Fmaster\u002Flesson0)\n* Lesson 1: [《一个最简单的 express 应用》](https:\u002F\u002Fgithub.com\u002Falsotang\u002Fnode-lessons\u002Ftree\u002Fmaster\u002Flesson1)\n* Lesson 2: [《学习使用外部模块》](https:\u002F\u002Fgithub.com\u002Falsotang\u002Fnode-lessons\u002Ftree\u002Fmaster\u002Flesson2)\n* Lesson 3: [《使用 superagent 与 cheerio 完成简单爬虫》](https:\u002F\u002Fgithub.com\u002Falsotang\u002Fnode-lessons\u002Ftree\u002Fmaster\u002Flesson3)\n* Lesson 4: [《使用 eventproxy 控制并发》](https:\u002F\u002Fgithub.com\u002Falsotang\u002Fnode-lessons\u002Ftree\u002Fmaster\u002Flesson4)\n* Lesson 5: [《使用 async 控制并发》](https:\u002F\u002Fgithub.com\u002Falsotang\u002Fnode-lessons\u002Ftree\u002Fmaster\u002Flesson5)\n* Lesson 6: [《测试用例：mocha，should，istanbul》](https:\u002F\u002Fgithub.com\u002Falsotang\u002Fnode-lessons\u002Ftree\u002Fmaster\u002Flesson6)\n* Lesson 7: [《浏览器端测试：mocha，chai，phantomjs》](https:\u002F\u002Fgithub.com\u002Falsotang\u002Fnode-lessons\u002Ftree\u002Fmaster\u002Flesson7) -- by [@elrrrrrrr](https:\u002F\u002Fgithub.com\u002Felrrrrrrr)\n* Lesson 8: [《测试用例：supertest》](https:\u002F\u002Fgithub.com\u002Falsotang\u002Fnode-lessons\u002Ftree\u002Fmaster\u002Flesson8)\n* Lesson 9: [《正则表达式》](https:\u002F\u002Fgithub.com\u002Falsotang\u002Fnode-lessons\u002Ftree\u002Fmaster\u002Flesson9)\n* Lesson 10: [《benchmark 怎么写》](https:\u002F\u002Fgithub.com\u002Falsotang\u002Fnode-lessons\u002Ftree\u002Fmaster\u002Flesson10)\n* Lesson 11: [《作用域与闭包：this，var，(function () {})》](https:\u002F\u002Fgithub.com\u002Falsotang\u002Fnode-lessons\u002Ftree\u002Fmaster\u002Flesson11) -- by [@Ricardo-Li](https:\u002F\u002Fgithub.com\u002FRicardo-Li\u002F)\n* Lesson 12: [《线上部署：heroku》](https:\u002F\u002Fgithub.com\u002Falsotang\u002Fnode-lessons\u002Ftree\u002Fmaster\u002Flesson12)\n* Lesson 13: [《持续集成平台：travis》](https:\u002F\u002Fgithub.com\u002Falsotang\u002Fnode-lessons\u002Ftree\u002Fmaster\u002Flesson13)\n* Lesson 14: [《js 中的那些最佳实践》](https:\u002F\u002Fgithub.com\u002Falsotang\u002Fnode-lessons\u002Ftree\u002Fmaster\u002Flesson14)\n* Lesson 15: [《Mongodb 与 Mongoose 的使用》](https:\u002F\u002Fgithub.com\u002Falsotang\u002Fnode-lessons\u002Ftree\u002Fmaster\u002Flesson15)\n* Lesson 16: [《cookie 与 session》](https:\u002F\u002Fgithub.com\u002Falsotang\u002Fnode-lessons\u002Ftree\u002Fmaster\u002Flesson16) -- by [@Ricardo-Li](https:\u002F\u002Fgithub.com\u002FRicardo-Li\u002F)\n* Lesson 17: [《使用 promise 替代回调函数》](https:\u002F\u002Fgithub.com\u002Falsotang\u002Fnode-lessons\u002Ftree\u002Fmaster\u002Flesson17) -- by [@eeandrew](https:\u002F\u002Fgithub.com\u002Feeandrew)\n* Lesson 18: [《何为 connect 中间件》](https:\u002F\u002Fgithub.com\u002Falsotang\u002Fnode-lessons\u002Ftree\u002Fmaster\u002Flesson18) -- by [@albin3](https:\u002F\u002Fgithub.com\u002Falbin3)\n\n## 计划\n\n* 《http 中各个 header 的含义》\n* 《操作 mysql》\n* 《在全新的 vps 上搭建 node.js、mongodb、nginx》\n* 《一个简单的 blog 程序》\n\n## 本课程特点\n\n* 每一课的课程挑战如果有能力完成，则可考虑放弃阅读课程内容\n* 对 web 开发初学者不友好，对 Windows 用户不友好，对 ruby on rails 开发者友好\n* 内容笼统，课程重点随心所欲\n\n## License\n\nMIT\n","《Node.js 包教不包会》是一个由 alsotang 编写的 Node.js 教程项目，旨在为初学者提供实战经验。该项目通过一系列精心设计的课程，涵盖从基础环境搭建到使用 Express 构建应用、外部模块的使用、爬虫开发、并发控制、测试用例编写等多个方面，帮助学习者逐步掌握 Node.js 开发技能。尽管部分内容可能未采用最新的异步处理技术如 `Promise` 和 `await\u002Fasync`，但整体上依然能够满足入门级开发者的需求。此教程非常适合那些希望在实际项目中加深对 Node.js 理解的新手程序员或 Web 开发爱好者。",2,"2026-06-11 02:53:16","top_language"]