You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: 04_removeFromArray/README.md
+2-2Lines changed: 2 additions & 2 deletions
Original file line number
Diff line number
Diff line change
@@ -10,7 +10,7 @@ removeFromArray([1, 2, 3, 4], 3); // should remove 3 and return [1,2,4]
10
10
11
11
The first test on this one is fairly easy, but there are a few things to think about(or google) here for the later tests:
12
12
13
+
- you can manipulate the original array you pass into the function call or create a new array that is returned as the result.
13
14
- how to remove a single element from an array
14
15
- how to deal with multiple optional arguments in a javascript function
15
-
-[Check this link](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/arguments). Scroll down to the bit about `Array.from` or the spread operator. - [Or this link](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/rest_parameters).
16
-
16
+
- For more information, check out MDN's page on [function arguments](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/arguments) - scroll down to the bit about `Array.from` or the spread operator. You can also check out MDN's page on [rest parameters](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/rest_parameters).
Copy file name to clipboardExpand all lines: README.md
+7-7Lines changed: 7 additions & 7 deletions
Original file line number
Diff line number
Diff line change
@@ -13,21 +13,21 @@ If you have a suggestion to improve an exercise, an idea for a new exercise, or
13
13
14
14
1. Fork and clone this repository. To learn how to fork a repository, see the GitHub documentation on how to [fork a repo](https://docs.github.com/en/get-started/quickstart/fork-a-repo).
15
15
- Copies of repositories on your machine are called clones. If you need help cloning to your local environment you can learn how from the GitHub documentation on [cloning a repository](https://docs.github.com/en/github/creating-cloning-and-archiving-repositories/cloning-a-repository-from-github/cloning-a-repository).
16
-
2. Before you start working on any exercises, you should first ensure you have the following installed:
16
+
1. Before you start working on any exercises, you should first ensure you have the following installed:
17
17
-**NPM**. You should have installed NPM already in our [Installing Node.js](https://www.theodinproject.com/paths/foundations/courses/foundations/lessons/installing-node-js) lesson. Just in case you need to check, type `npm --version` in your terminal. If you get back `Command 'npm' not found, but can be installed with:`, **do not follow the instructions in the terminal** to install with `apt-get` as this causes permission issues. Instead, go back to the installation lesson and install Node with NVM by following the instructions there.
18
18
-**Jest**. After cloning this repository to your local machine and installing NPM, go into the newly created directory (`cd javascript-exercises`) and run `npm install`. This will install Jest and set up the testing platform based on our preconfigured settings. (Note: if you get warnings that packages are out of date or contain vulnerabilities, you can safely ignore them for these exercises.)
19
-
20
-
3. Each exercise includes the following:
19
+
20
+
1. Each exercise includes the following:
21
21
22
22
- A markdown file with a description of the task, an empty (or mostly empty) JavaScript file, and a set of tests.
23
23
- A `solutions` directory that contains a solution and the same test file with all of the tests unskipped.
24
24
25
25
To complete an exercise, you'll need to go to the exercise directory with `cd exerciseName` in the terminal and run `npm test exerciseName.spec.js`. This should run the test file and show you the output. When you first run a test, it will fail. This is by design! You must open the exercise file and write the code needed to get the test to pass.
26
-
4. Some of the exercises have test conditions defined in their spec file as `test.skip` compared to `test`. This is purposeful. After you pass one `test`, you will change the next `test.skip` to `test` and test your code again. You'll do this until all conditions are satisfied. **All tests must pass at the same time**, and you should not have any `test.skip` instances by the time you finish an exercise.
27
-
5. Once you successfully finish an exercise, check the `solutions` directory within each exercise to compare it with yours.
26
+
1. Some of the exercises have test conditions defined in their spec file as `test.skip` compared to `test`. This is purposeful. After you pass one `test`, you will change the next `test.skip` to `test` and test your code again. You'll do this until all conditions are satisfied. **All tests must pass at the same time**, and you should not have any `test.skip` instances by the time you finish an exercise.
27
+
1. Once you successfully finish an exercise, check the `solutions` directory within each exercise to compare it with yours.
28
28
- You should not be checking the solution for an exercise until you finish it!
29
-
-Keep in mind that TOP's solution is not the only solution. Generally as long as all of the tests pass, your solution should be fine.
30
-
6. Do not submit your solutions to this repo, as any PRs that do so will be closed without merging.
29
+
-If your solution differs wildly from TOP's solution (and still passes the exercise's requirements), that's completely fine. Do feel free to ask about it in our Discord if there are parts you do not understand.
30
+
1. Do not submit your solutions to this repo, as any PRs that do so will be closed without merging.
31
31
32
32
**Note**: Due to the way Jest handles failed tests, it may return an exit code of 1 if any tests fail. NPM will interpret this as an error and you may see some `npm ERR!` messages after Jest runs. You can ignore these, or run your test with `npm test exerciseName.spec.js --silent` to supress the errors.
0 commit comments