An open API service indexing awesome lists of open source software.

https://github.com/0mppula/eloquent_javascript_third_edition

Solutions to the exercises from the ebook 'Eloquent JavaScript, 3rd Edition' by: Marjin Haverbeke.
https://github.com/0mppula/eloquent_javascript_third_edition

crash-course eloquent-javascript exercises javascript learning

Last synced: 11 months ago
JSON representation

Solutions to the exercises from the ebook 'Eloquent JavaScript, 3rd Edition' by: Marjin Haverbeke.

Awesome Lists containing this project

README

          

# Eloquent JavaScript, 3rd Edition: A Modern Introduction to Programming

Solutions to exercises from the ebook "[Eloquent JavaScript, 3rd Edition][1]" by: Marijn Haverbeke.

## Part 1: Language

### Chapter 1: Values, Types, and Operators

- [x] 1.1 No Exercises in this chapter

### Chapter 2: Program Structure

- [x] 2.1 [Looping a Triangle](./2_program_structure/triangle.js/)
- [x] 2.2 [FizzBuzz](./2_program_structure/fizz_buzz.js/)
- [x] 2.3 [Chessboard](./2_program_structure/chessboard.js/)

### Chapter 3: Functions

- [x] 3.1 [Minimum](./3_functions/minimum.js/)
- [x] 3.2 [Recursion](./3_functions/recursion.js/)
- [x] 3.3 [Bean Counting](./3_functions/bean_counting.js/)

### Chapter 4: Data Structures

- [x] 4.1 [The Sum of a Range](./4_data_structures/range_sum.js/)
- [x] 4.2 [Reversing an Array](./4_data_structures/reverse_array.js/)
- [x] 4.3 [A List](./4_data_structures/a_list.js/)
- [x] 4.4 [Deep Comparison](./4_data_structures/deep_comparison.js/)

### Chapter 5: Higher-Order Functions

- [x] 5.1 [Flattening](./5_higher-order_functions/flattening.js/)
- [x] 5.2 [Your Own Loop](./5_higher-order_functions/your_own_loop.js/)
- [x] 5.3 [Everything](./5_higher-order_functions/everything.js/)
- [x] 5.4 [Dominant Writing Direction](./5_higher-order_functions/dominant_writing_direction.js/)

### Chapter 6: The Secret Life of Objects

- [x] 6.1 [A Vector Type](./6_secret_life_of_objects/vector.js/)
- [x] 6.2 [Groups](./6_secret_life_of_objects/groups.js/)
- [x] 6.3 [Iterable Groups](./6_secret_life_of_objects/iterable_groups.js/)
- [x] 6.4 [Borrowing a Method](./6_secret_life_of_objects/borrowing_method.js/)

### Chapter 7: Project: A Robot

- [x] 7.1 [Measuring a Robot](./7_a_robot/measuring_a_robot.js/)
- [x] 7.2 [Robot Efficiency](./7_a_robot/robot_efficiency.js/)
- [x] 7.3 [Persistent Group](./7_a_robot/persistent_group.js/)

### Chapter 8: Bugs and Errors

- [x] 8.1 [Retry](./8_bugs_and_errors/retry.js/)
- [x] 8.2 [The Locked Box](./8_bugs_and_errors/locked_box.js/)

### Chapter 9: Regular Expressions

- [x] 9.1 [Regexp Golf](./9_regular_expressions/regexp_golf.js/)
- [x] 9.2 [Quoting Style](./9_regular_expressions/quoting_style.js/)
- [x] 9.3 [Numbers Again](./9_regular_expressions/numbers_again.js/)

### Chapter 10: Modules

- [x] 10.2 [Roads Module](./10_modules/roads_module.js/)

### Chapter 11: Asynchronous Programming

- [x] 11.1 [Tracking the Scalpel](./11_asynchronous_programming/tracking_the_scalpel.js/)
- [x] 11.2 [Building Promise.all](./11_asynchronous_programming/building_promise.all.js/)

### Chapter 12: Project: A Programming Language

- [x] 12.1 [Arrays](./12_a_programming_language/arrays.js/)
- [x] 12.3 [Comments](./12_a_programming_language/comments.js/)
- [x] 12.4 [Fixing Scope](./12_a_programming_language/fixing_scope.js/)

## Part 2: Browser

### Chapter 13: JavaScript and the Browser

- [x] 13.1 No Exercises in this chapter

### Chapter 14: The Document Object Model

- [x] 14.1 [Build a Table](./14_the_document_object_model/build_a_table/)
- [x] 14.2 [Elements by Tag Name](./14_the_document_object_model/elements_by_tag_name/)
- [x] 14.3 [The Cat's Hat](./14_the_document_object_model/the_cats_hat/)

### Chapter 15: Handling Events

- [x] 15.1 [Balloon](./15_handling_events/balloon/)
- [x] 15.2 [Mouse Trail](./15_handling_events/mouse_trail/)
- [x] 15.3 [Tabs](./15_handling_events/tabs/)

### Chapter 16: Project: A Platform Game

- [x] 16.1 [Game Over](./16_a_platform_game/)
- [x] 16.2 [Pausing the Game](./16_a_platform_game/)
- [x] 16.3 [A Monster](./16_a_platform_game/)

### Chapter 17: Drawing on Canvas

- [x] 17.1 [Shapes](./17_drawing_on_canvas/shapes/)
- [x] 17.2 [The Pie Chart](./17_drawing_on_canvas/pie_chart/)
- [x] 17.3 [A Bouncing Ball](./17_drawing_on_canvas/a_bouncing_ball/)

### Chapter 18: HTTP and Forms

- [x] 18.1 [Content Negotiation](./18_http_and_forms/content_negotiation/)
- [x] 18.2 [A JavaScript Workbench](./18_http_and_forms/a_javascript_workbench/)
- [x] 18.3 [Conway’s Game of Life](./18_http_and_forms/conways_game_of_life/)

### Chapter 19: A Pixel Art Editor

- [x] 19.1 [Keyboard Bindings](./19_a_pixel_art_editor/)
- [x] 19.2 [Efficient Drawing](./19_a_pixel_art_editor/)
- [x] 19.3 [Circles](./19_a_pixel_art_editor/)
- [x] 19.4 [Proper Lines](./19_a_pixel_art_editor/)

## Part 3: Node

### Chapter 20: Node.js

- [x] 20.1 [Search Tool](./20_node.js/search_tool.js/)
- [x] 20.2 [Directory Creation](./20_node.js/directory_creation.js)
- [ ] 20.3 A Public Space on the Web

### Chapter 21: Project: Skill-Sharing Website

- [x] 21.1 [Disk Persistence](/21_skill-sharing_website/)
- [x] 21.2 [Comment Field Resets](/21_skill-sharing_website/)

### Chapter 22: JavaScript and Performance

- [x] 22.1 [Pathfinding](/22_javascript_and_performance/pathfinding.js)

[1]: https://eloquentjavascript.net/