https://github.com/jfarmer/exercises-js-fundamentals
A collection of JavaScript exercises for new learners
https://github.com/jfarmer/exercises-js-fundamentals
javascript javascript-exercises
Last synced: 5 months ago
JSON representation
A collection of JavaScript exercises for new learners
- Host: GitHub
- URL: https://github.com/jfarmer/exercises-js-fundamentals
- Owner: jfarmer
- License: cc-by-sa-4.0
- Created: 2019-07-10T22:11:40.000Z (almost 7 years ago)
- Default Branch: master
- Last Pushed: 2023-07-27T21:01:33.000Z (almost 3 years ago)
- Last Synced: 2023-07-27T22:21:38.646Z (almost 3 years ago)
- Topics: javascript, javascript-exercises
- Language: JavaScript
- Homepage:
- Size: 643 KB
- Stars: 10
- Watchers: 1
- Forks: 73
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# JavaScript Exercises - Fundamentals
This is a big collection of JavaScript exercises. Within each section, the exercises are roughly ordered from least to most difficult.
We recommend doing the first 3-5 exercises in each section before doing deeper in any single section.
If a particular concept isn't familiar to you, go read the relevant section in the [JavaScript crash course][github-intro-javascript].
## Feedback
Remember, the goal is not to nail every exercise, but to create good opportunities for feedback. That means:
1. Devise a clear (but probably incomplete or mistaken) plan
1. Implement that plan in code as best you can
1. Get feedback from the computer, peers, and instructors
1. Revise plan and repeat
## JavaScript Crash Course Sections
Here are some quick links to the different sections in the JavaScript crash course.
- [JavaScript crash course homepage][github-intro-javascript]
- [Numbers and Strings][intro-data]
- [Variables][intro-variables]
- [Conditionals][intro-conditionals]
- [Arrays and Dictionaries][intro-collections]
- [Looping][intro-looping]
- [Functions][intro-functions]
## Numbers
1. [isZero](exercises/numbers/isZero)
1. [isPositive](exercises/numbers/isPositive)
1. [isNegative](exercises/numbers/isNegative)
1. [isEven](exercises/numbers/isEven)
1. [isOdd](exercises/numbers/isOdd)
1. [remainderOf](exercises/numbers/remainderOf)
1. [isMultipleOf](exercises/numbers/isMultipleOf)
1. [power](exercises/numbers/power)
1. [isPowerOf](exercises/numbers/isPowerOf)
1. [isPowerOfTwo](exercises/numbers/isPowerOfTwo)
1. [isPerfectSquare](exercises/numbers/isPerfectSquare)
1. [factors](exercises/numbers/factors)
1. [isPrime](exercises/numbers/isPrime)
1. [primeFactors](exercises/numbers/primeFactors)
1. [sumOfRange](exercises/numbers/sumOfRange)
1. [factorial](exercises/numbers/factorial)
1. [celsiusToFahrenheit](exercises/numbers/celsiusToFahrenheit)
1. [fahrenheitToCelsius](exercises/numbers/fahrenheitToCelsius)
1. [fibonacci](exercises/numbers/fibonacci)
## Strings
1. [countLetter](exercises/strings/countLetter)
1. [capitalize](exercises/strings/capitalize)
1. [longestWord](exercises/strings/longestWord)
1. [shortestWord](exercises/strings/shortestWord)
1. [replaceCharacter](exercises/strings/replaceCharacter)
1. [replaceCharacters](exercises/strings/replaceCharacters)
1. [toLowercase](exercises/strings/toLowercase)
1. [toUppercase](exercises/strings/toUppercase)
1. [toSnakeCase](exercises/strings/toSnakeCase)
1. [toTitleCase](exercises/strings/toTitleCase)
1. [rot13](exercises/strings/rot13)
1. [rotN](exercises/strings/rotN)
## Branching / Conditionals
1. [daysInMonthByNumber](exercises/branching-conditionals/daysInMonthByNumber)
1. [letterGrade](exercises/branching-conditionals/letterGrade)
1. [isValidTriangle](exercises/branching-conditionals/isValidTriangle)
1. [triangleType](exercises/branching-conditionals/triangleType)
1. [rockPaperScissorsWinner](exercises/branching-conditionals/rockPaperScissorsWinner)
## Patterns to Print
1. [printSolidSquare](exercises/patterns/printSolidSquare)
1. [printSolidRightTriangle](exercises/patterns/printSolidRightTriangle)
1. [printSolidPyramid](exercises/patterns/printSolidPyramid)
1. [printHollowSquare](exercises/patterns/printHollowSquare)
1. [printHollowRightTriangle](exercises/patterns/printHollowRightTriangle)
1. [printHollowPyramid](exercises/patterns/printHollowPyramid)
1. [printInvertedSolidRightTriangle](exercises/patterns/printInvertedSolidRightTriangle)
1. [printMultiplicationTable](exercises/patterns/printMultiplicationTable)
1. [printPlus](exercises/patterns/printPlus)
## Arrays
1. [largest](exercises/arrays/largest)
1. [smallest](exercises/arrays/smallest)
1. [longest](exercises/arrays/longest)
1. [shortest](exercises/arrays/shortest)
1. [sum](exercises/arrays/sum)
1. [mean](exercises/arrays/mean)
1. [median](exercises/arrays/median)
1. [product](exercises/arrays/product)
1. [includes](exercises/arrays/includes)
1. [firstIndexOf](exercises/arrays/firstIndexOf)
1. [lastIndexOf](exercises/arrays/lastIndexOf)
1. [countEvens](exercises/arrays/countEvens)
1. [countOdds](exercises/arrays/countOdds)
1. [countGreaterThan](exercises/arrays/countGreaterThan)
1. [countLessThan](exercises/arrays/countLessThan)
1. [countValue](exercises/arrays/countValue)
1. [selectEvens](exercises/arrays/selectEvens)
1. [selectOdds](exercises/arrays/selectOdds)
1. [selectGreaterThan](exercises/arrays/selectGreaterThan)
1. [selectLessThan](exercises/arrays/selectLessThan)
1. [selectLongerThan](exercises/arrays/selectLongerThan)
1. [selectShorterThan](exercises/arrays/selectShorterThan)
1. [allPositive](exercises/arrays/allPositive)
1. [anyPositive](exercises/arrays/anyPositive)
1. [concat](exercises/arrays/concat)
1. [removeEmpty](exercises/arrays/removeEmpty)
1. [removeElement](exercises/arrays/removeElement)
1. [selectAboveMean](exercises/arrays/selectAboveMean)
[github-intro-javascript]: https://github.com/jfarmer/intro-javascript
[intro-data]: https://github.com/jfarmer/intro-javascript/tree/master/Data
[intro-variables]: https://github.com/jfarmer/intro-javascript/tree/master/Variables
[intro-conditionals]: https://github.com/jfarmer/intro-javascript/tree/master/Conditionals
[intro-collections]: https://github.com/jfarmer/intro-javascript/tree/master/Collections
[intro-looping]: https://github.com/jfarmer/intro-javascript/tree/master/Iteration
[intro-functions]: https://github.com/jfarmer/intro-javascript/tree/master/Functions