Skip to content

Update removeAt function #1264

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 1 commit into from
Closed

Conversation

TedMwai
Copy link
Contributor

@TedMwai TedMwai commented Nov 24, 2022

Previous removeAt function would throw a type error if the index is equals to the length of the list. This is because the first if statement in the removeAt function checked if the index is greater or equals to the length of the list whereas it should only check if the index is greater than the length and if true, it should throw a type error.

Open in Gitpod know more

Describe your change:

  • Fix a bug or typo in the first if statement inside the removeAt() function

Checklist:

  • I have read CONTRIBUTING.md.
  • This pull request is all my own work -- I have not plagiarized.
  • I know that pull requests will not be merged if they fail the automated tests.
  • This PR only changes one algorithm file. To ease review, please open separate PRs for separate algorithms.
  • All new JavaScript files are placed inside an existing directory.
  • All filenames should use the UpperCamelCase (PascalCase) style. There should be no spaces in filenames.
    Example:UserProfile.js is allowed but userprofile.js,Userprofile.js,user-Profile.js,userProfile.js are not
  • All new algorithms have a URL in its comments that points to Wikipedia or other similar explanation.
  • If this pull request resolves one or more open issues then the commit message contains Fixes: #{$ISSUE_NO}.

Previous removeAt function would throw a type error if the index is equals to the length of the list. This is because the check at line 184 checked if the index is greater or equals to the length of the list whereas it should only check if the index is greater than the length and if true, it should throw a type error.
Copy link
Collaborator

@appgurueu appgurueu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This can't be quite right either. It seems the code intended to use 0-based indexing. This would give us indices from 0 (first) to length - 1 (last), which is what the code correctly checks against. The later check index === this.length is presumably wrong however and should be fixed to be index === this.length - 1.

Also, please add tests.

@appgurueu appgurueu added on hold Being discussed by the maintainers fix Fixes a bug labels Nov 24, 2022
@TedMwai TedMwai closed this Feb 7, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
fix Fixes a bug on hold Being discussed by the maintainers
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants