← Back to challenges

Chess Pieces

JavaScriptHardgameslogicalgorithmsvalidation

Instructions

Create a function that takes the name of a chess piece, its position and a target position. The function should return true if the piece can move to the target and false if it can't.

The possible inputs are "Pawn", "Knight", "Bishop", "Rook", "Queen" and "King".

Examples

canMove("Rook", "A8", "H8") ➞ true

canMove("Bishop", "A7", "G1") ➞ true

canMove("Queen", "C4", "D6") ➞ false

Notes

  • Do not include pawn capture moves and en passant.
  • Do not include castling.
  • Remember to include pawns' two-square move on the second rank!
  • Look for patterns in the movement of the pieces.
javascript
Loading editor…
to run
Walks through the solution with reasoning and edge cases.