Erro código Javascript, como solucionar?

Tenho que fazer um sistema de saque em JavaScript, como é de se esperar meu codigo está dando erro, peço que me ajudem

<!DOCTYPE html>
<html>
<head>
	<title>Banco seu dinheiro é nosso</title>
	<meta charset="utf-8">
	<link rel="stylesheet" type="text/css" href="css/sty.css">
	
	<script type="text/javascript">
		
		var saldo = 1000;
		var quantia = parseInt(window.prompt())
		var sub = saldo - quantia;
		function saca(){
			if(quantia < saldo){
				saldo = sub;
			}else{
				alert("Vish... dá não, é dinheiro demais")
			}
		}
		localStorage.setItem("valor", saldo);
	</script>

</head>
<body>
	<header>
		<p id="a"> $ Banco seu dinheiro é nossso $ </p>
	</header>
	<section>
		<div id="b">
			<p id="b1">Seu saldo:<script type="text/javascript">document.write(saldo);</script></p>
		</div>
			<button id="b2" onclick="alert(quantia)"> <p id="b3">Confira a quantia</p></button>
			<button id="b4" onclick="saca()"><p id="b5">Sacar</p></button>
	</section>
	<footer>
		
	</footer>
</body>
</html>

E qual o erro?

Pelo que eu vi ele só não esta atualizando o valor na tela,
se for só isso adicione esta linha abaixo do saldo = sub; rs

document.getElementById('b1').innerHTML = "Seu saldo: "+ saldo;