spabsa
spabsa

Reputation: 151

why can't log keycode value to the console window?

Hey guy's I'm trying to make a snake game in JS. Right now I'm making the function that will determine the direction of the snake, but at the moment I just want to log the keycode of any given key to the console, but it comes up as undefined? Why is this? I have the keycode stored into a variable before I log it? thanks for the help:)

const canvas = document.querySelector('#canvas');
const ctx = canvas.getContext('2d');

//set canvas dimension equal to css dimension
canvas.width = 750;
canvas.height = 500;

//create stroke
ctx.strokeStyle = 'limegreen';
ctx.strokeRect(375, 250, 15, 15);

//create square
ctx.fillStyle = 'limegreen';
ctx.fillRect(375, 250, 15, 15);

//read user's direction
document.addEventListener('keydown', changeDirection);

function changeDirection(e) {
	let code = e.keycode;
	console.log(code);
}
<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Snake Game</title>
	<style>
		body {
			background-color: #333;
		}

		canvas {
			background-color: #4d4d4d;
			margin: auto;
			display: block;
			position: absolute;
			left: 0;
			right: 0;
			top: 0;
			bottom: 0;
			width: 750px;
			height: 500px;		
		}
	</style>
</head>
<body>
	<canvas id="canvas"></canvas>
	<script src="script.js"></script>
</body>
</html>

Upvotes: 0

Views: 33

Answers (1)

Asim Khan
Asim Khan

Reputation: 2039

Try e.keyCode instead of e.keycode

Upvotes: 2

Related Questions