JavaScript30 一个月纯 JS 挑战中文指南(英文全集)


Posted in Javascript onJuly 23, 2017

JavaScript30 ? 一个月纯 JS 挑战中文指南

JavaScirpt30 是 Wes Bos 推出的一个 30 天挑战。项目免费提供了 30 个视频教程、30 个挑战的起始文档和 30 个挑战解决方案源代码。目的是帮助人们用纯 JavaScript 来写东西,不借助框架和库,也不使用编译器和引用

https://github.com/soyaine/JavaScript30

中文指南作者:缉熙Soyaine
JavaScript30 教程作者:Wes Bos
完整指南在 GitHub,喜欢请 Star 哦♪(^∇^*)

JavaScript30 是什么?

JavaScirpt30 是 Wes Bos 推出的一个 30 天挑战。项目免费提供了 30 个视频教程、30 个挑战的起始文档和 30 个挑战解决方案源代码。目的是帮助人们用纯 JavaScript 来写东西,不借助框架和库,也不使用编译器和引用。

官网的 slogan 如下:

Build 30 things in 30 days with 30 tutorial No Frameworks × No Compilers × No Libraries × No Boilerplate
关于《 JavaScript30 中文指南》

英文中描述纯 JavaScript 使用的单词是 vanilla JavaScript,vanilla 有平凡普通的意味,同时也有香草的释义,这个词很美,可惜我找不到适当的汉语来翻译它。我从入门前端时就在用纯 JavaScript 来写东西、写博客,看到这个挑战时很开心,觉得在前端社区各种框架热热闹闹的时候,有人回到最本真的地方,是很难得的一件事。

当然不可否认的是,新的工具可以帮助我们提高生产率,但最原始的 JavaScript 想必是很多人的知识结构里所缺失的部分,如果你也想探探究竟,欢迎跟着这份指南,一起逛逛 JavaScript 的原始世界。

写这份中文指南的另一个原因是看了 Nitish Dayal 写的 Guides,我决定效仿他,在记录笔记的同时梳理思路,整理形成指南。我相信 Learn by Use 的同时也深信教是最好的学。希望这份指南能够帮助到想要进行练习的人们,特别是那些想要入门的前端小白们。

目前这份指南还在更新之中,欢迎监督我,如果你想要及时获取新的文章,可以在 GitHub Star/Fork 我的 Repo。

如何参加挑战

下面是完成 Wes Bos 的 JavaScript30 挑战所能借鉴的文档,每个文档的具体使用建议如下:

  • JavaScript30 官网:进入官网注册后可以观看和下载所有教程视频。Wes Bos 还把视频传到了百度云,进入官网直接拉到页面底部就能找到链接。
  • Nitish Dayal 写的英文指南:这是一份非官方的文字版指南,也是激励我写这一系列文章的主要因素。
  • 挑战初始文档:这是 Wes Bos 这份教程涉及的代码,你可以直接 Clone 或者下载到本地,然后开始你 30 天的挑战之旅。文档共有 30 个文件夹,每个文件夹中至少有两个文件。
    • index-START.html:是提供给我们的初始文档,方便我们专注于 JavaScript 的编写,这个文档已经将基础的 HTML 和 CSS 部分写好,我们只需要在这个基础上编写 JavaScript 代码,实现特定的功能即可。
    • index-FINISHED.html:已经实现了最终效果的文档,可以查看效果和实现思路。
  • 我写的中文指南源码:文档结构和 Wes Bos 提供的相同,进入每个文件夹都可查看当前挑战的指南(README.md),我完成挑战时建立的文件是 index-SOYAINE.html,里面有核心代码的中文注释。如果阅读过程中发现问题,请在这里提 issue。 如果喜欢记得 Star 哟~♪(^∇^*),鼓励我写出更好的文章。

目录

  1. JavaScript Drum Kit 指南 | 纯 JS 模拟敲鼓效果
  2. JS + CSS Clock 指南 | 纯 JavaScript+CSS 时钟效果
  3. CSS Variables 指南 | 用 CSS 变量实现拖动控制参数效果
  4. Array Cardio, Day 1 指南 | 数组基本操作方法示例一
  5. Flex Panel Gallery 指南 | 可伸缩的图片墙在线效果
  6. Type Ahead 指南 | 根据关键词快速匹配诗句在线效果
  7. Array Cardio, Day 2 指南 | 数组基本操作方法示例二
  8. Fun with HTML5 Canvas 指南 | 彩虹画笔绘画板在线效果
  9. Dev Tools Domination 指南 | Console 调试技巧在线示例
  10. Hold Shift and Check Checkboxes 指南 | Shift 批量选中在线效果
  11. Custom Video Player 指南
  12. Key Sequence Detection 指南 | 在线效果
  13. Slide in on Scroll 指南 | 图片随屏幕滚动而滑入滑出的在线效果
  14. JavaScript References vs. Copying
  15. LocalStorage
  16. Mouse Move Shadow
  17. Sort Without Articles
  18. Adding Up Times with Reduce
  19. Webcam Fun
  20. Speech Detection
  21. Geolocation
  22. Follow Along Link Highlighter
  23. Speech Synthesis
  24. Sticky Nav
  25. Event Capture, Propagation, Bubbling, and Once
  26. Stripe Follow Along Nav
  27. Click and Drag
  28. Video Speed Controller
  29. Countdown Timer
  30. Whack A Mole

参加挑战并不需要你缴纳费用或是加入什么组织,也不会有人催着你去做什么,你只需要打开电脑,然后开始思考、敲击键盘。相信内在动机的力量,我在这里给出了一些建议和心得,最适合你的方法还需要你自己去摸索。

本中文指南贡献者名单

  • @DrakeXiang  
  • @zzh466
  • @Xing Liu
  • @缉熙Soyaine
Javascript 相关文章推荐
clientX,pageX,offsetX,x,layerX,screenX,offsetLeft区别分析
Mar 12 Javascript
高亮显示web页表格行的javascript代码
Nov 19 Javascript
js 字符串转化成数字的代码
Jun 29 Javascript
jquery 操作css样式、位置、尺寸方法汇总
Nov 28 Javascript
基于jquery实现等比缩放图片
Dec 03 Javascript
jquery利用json实现页面之间传值的实例解析
Dec 12 Javascript
使用smartupload组件实现jsp+jdbc上传下载文件实例解析
Jan 05 Javascript
利用node.js本地搭建HTTP服务器
Apr 19 Javascript
vue.js源代码core scedule.js学习笔记
Jul 03 Javascript
koa-router源码学习小结
Sep 07 Javascript
详解关于vue2.0工程发布上线操作步骤
Sep 27 Javascript
小程序视频或音频自定义可拖拽进度条的示例代码
Sep 30 Javascript
jquery实现下拉菜单的手风琴效果
Jul 23 #jQuery
基于Vue.js实现tab滑块效果
Jul 23 #Javascript
JavaScript判断浏览器和hack滚动条的写法
Jul 23 #Javascript
原生js FileReader对象实现图片上传本地预览效果
Mar 27 #Javascript
JavaScript解析任意形式的json树型结构展示
Jul 23 #Javascript
Node.js如何实现注册邮箱激活功能 (常见)
Jul 23 #Javascript
jQuery.Ajax()的data参数类型详解
Jul 23 #jQuery
You might like
解决php用mysql方式连接数据库出现Deprecated报错问题
2019/12/25 PHP
location.href语句与火狐不兼容的问题
2010/07/04 Javascript
封装的原生javascript弹出层代码
2010/09/24 Javascript
IE6下CSS图片缓存问题解决方法
2010/12/09 Javascript
javascript字符串与数组转换汇总
2015/05/26 Javascript
JavaScript获取各大浏览器信息图示
2015/11/20 Javascript
页面get请求 中文参数方法乱码问题的快速解决方法
2016/05/31 Javascript
深入理解React中es6创建组件this的方法
2016/08/29 Javascript
JavaScript基础——使用Canvas绘图
2016/11/02 Javascript
Vue.js 2.0 移动端拍照压缩图片上传预览功能
2017/03/06 Javascript
jquery dataTable 获取某行数据
2017/05/05 jQuery
JavaScript面向对象程序设计创建对象的方法分析
2018/08/13 Javascript
JavaScript模板引擎应用场景及实现原理详解
2018/12/14 Javascript
JavaScript进阶(一)变量声明提升实例分析
2020/05/09 Javascript
基于Cesium绘制抛物弧线
2020/11/18 Javascript
[01:11:32]VG vs FNATIC 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/17 DOTA
Python实现的最近最少使用算法
2015/07/10 Python
python如何使用正则表达式的前向、后向搜索及前向搜索否定模式详解
2017/11/08 Python
Python分析学校四六级过关情况
2017/11/22 Python
Tensorflow实现卷积神经网络用于人脸关键点识别
2018/03/05 Python
详解python单元测试框架unittest
2018/07/02 Python
tensorflow实现图像的裁剪和填充方法
2018/07/27 Python
pyqt5 获取显示器的分辨率的方法
2019/06/18 Python
python函数调用,循环,列表复制实例
2020/05/03 Python
Python爬虫进阶之爬取某视频并下载的实现
2020/12/08 Python
HTML5之SVG 2D入门12—SVG DOM及DOM操作介绍
2013/01/30 HTML / CSS
科颜氏加拿大官方网站: Kiehl’s加拿大
2016/08/16 全球购物
美国眼镜在线零售商:Dualens
2019/12/07 全球购物
应届生财务管理求职信
2013/11/06 职场文书
上课迟到检讨书100字
2014/01/11 职场文书
2014全国两会学习心得体会2000字
2014/03/10 职场文书
国家领导干部党的群众路线教育实践活动批评与自我批评材料
2014/09/23 职场文书
公司租房协议书范本
2014/10/08 职场文书
学习经验交流会策划书
2015/11/02 职场文书
ubuntu安装jupyter并设置远程访问的实现
2022/03/31 Python
Java 深入探究讲解简单工厂模式
2022/04/07 Java/Android