Why arent my objects displaying without the gameloop function

function load_images(){
//player,virus,gem
enemy_image = new Image;
enemy_image.src = “Assets/v1.png”;

player_img = new Image;
player_img.src = "Assets/superhero.png";

gem_image = new Image;
gem_image.src = "Assets/gemm.png";

}

function init(){
//define the objects that we will have in the game
canvas = document.getElementById(“mycanvas”);
console.log(canvas);
W = 700;
H = 400;

canvas.width = W;
canvas.height = H;

// create a context 
pen = canvas.getContext('2d');
console.log(pen);
game_over = false;

e1 = {
	x : 150,
	y : 50,
	w : 60,
	h : 60,
	speed : 20,
};
e2 = {
	x : 300,
	y : 150,
	w : 60,
	h : 60,
	speed : 30,
};
e3 = {
	x : 450,
	y : 20,
	w : 60,
	h : 60,
	speed : 40,
};

enemy = [e1,e2,e3];

player = {
	x : 20,
	y : H/2,
	w : 60,
	h : 60,
	speed : 20,
    moving  : false,
    health : 100,
};

gem = {
	x : W-100,
	y : H/2,
	w : 60,
	h : 60,
};

}

function draw(){

//clear the canvas area for the old frame
pen.clearRect(0,0,W,H);

//pen.fillStyle = "red";

// pen.fillRect(box.x,box.y,box.w,box.h);
//pen.drawImage(enemy_image,box.x,box.y,box.w,box.h);

//draw the player

//draw the gem

pen.drawImage(player_img,player.x,player.y,player.w,player.h);
pen.drawImage(gem_image,gem.x,gem.y,gem.w,gem.h);

for(let i=0;i<enemy.length;i++){
    pen.drawImage(enemy_image,enemy[i].x,enemy[i].y,enemy[i].w,enemy[i].h);
}

pen.fillStyle = "white";
pen.fillText("Score "+player.health,10,10);

}

load_images();
init();
draw();