И не надо без большой надобности впихивать javascript среди тегов html.
У него есть вполне определенные места в начале (в head) или в конце body
<html>
<body>
<canvas id="myCanvas" width="200" height="200">
</canvas>
<script>
var doc = document.getElementById("myCanvas")
var ctx = doc.getContext("2d")
ctx.beginPath()
ctx.rect(20, 20, 150, 100)
ctx.fillStyle = "red"
ctx.fill()
</script>
</body>
</html>