在函数内部时未运行Javascript代码

Javascript code not running when inside a function

本文关键字:运行 Javascript 代码 函数 内部      更新时间:2023-09-26

我正在用html和javascript制作一个游戏,并使用了"控制台",我使用IF语句允许用户在游戏中导航。但是,他们似乎已经停止了工作。它们允许用户在游戏中移动。为什么IF语句没有运行,我该如何解决这个问题?

function runcmd(){
	var user = document.getElementById('code').value;
	if(user == 'clear'){
		l1.innerHTML = '';
		l2.innerHTML = '';
		l3.innerHTML = '';
		l4.innerHTML = '';
		l5.innerHTML = '';
		l6.innerHTML = '';
		l7.innerHTML = '';
		l8.innerHTML = '';
		l9.innerHTML = '';
		l10.innerHTML = '';
	};
	if(user == 'connect'){
		var user = document.getElementById('code').value;
		l1.innerHTML = 'Connecting to ' ;
		l2.innerHTML = 'Connected to ' ;
		connected = true;
		l4.innerHTML = 'view bank';
		l5.innerHTML = 'upload [virus]';
		l8.innerHTML = 'disconnect [ip]';
		if(user == 'disconnect'){
			connected = false;
			l1.innerHTml = 'Disconnected Safely...';
		};
		if(user == 'view bank'){
			var pwrd = Math.floor( Math.random() * 1) - 10000;
			var nam = Math.floor( Math.random() * 1) - 10000;
			alert(pwrd);
		    alert(nam);
			var uname = 'user' + nam;
			var user = prompt('Username: ');
			var pass = prompt('Password: ');
			if(user == uname && pass == pwrd ){
			}
		};	
		if(user == 'upload'){
		    svirus= prompt('Enter Virus: ');
			for(var key in boughtviruses) {
				if(boughtviruses[key] == svirus) {
					l1.innerHTML = 'Uploading ' + svirus;
					l2.innerHTML = 'Virus Uploaded';
				}else{
					alert("You Don't Have This Virus!");
		  	};
            };
		};
	};
};
			.console{
				position: relative;
				height: 250px;
				width: 500px;
				background-color: #000;
				border-left: 10px solid #cccccc;
				border-top: 5px solid #cccccc;
				border-right: 10px solid #cccccc;
				border-bottom: 10px solid #cccccc;
			}
			.exit {
				float: right;
				background: #800000;
				color: white;
				height: 25px;
				border: none;
				width: 40px;
				font-size: 20px;
				text-align: center;
				margin-left: 5px;
			}
			<div id="con" class="console">
				<button class="exit" onclick="hidecon()">X</button>
					<span class="span" id="l1" style="width:50px"></span><br />
					<span class="span" id="l2" style="width:50px"></span><br />
					<span class="span" id="l3" style="width:50px"></span><br />
					<span class="span" id="l4" style="width:50px"></span><br />
					<span class="span" id="l5" style="width:50px"></span><br />
					<span class="span" id="l6"  style="width:50px"></span><br />
					<span class="span" id="l7" style="width:50px"></span><br />
					<span class="span" id="l8" style="width:50px"></span><br />
					<span class="span" id="l9"  style="width:50px"></span><br />
					<span class="span" id="l10"  style="width:50px"></span><br />
				<span style="position: absolute; left: 0; bottom: 0;color:#66ff33;">C:'></span><input onclick="this.select()" id="code" class="inp"/>
				<button style="border:none;position:absolute;background-color:black;bottom:0;right:114;color:#66ff33;border-radius: 5px;border: 1px solid white;" onclick="runcmd()">Send Command</button>
			</div>

当您输入"-100000"作为密码,输入"user-10000"作为用户名时,工作非常完美

据我所知,您正在尝试创建username&密码通过生成随机整数。

您的解决方案的问题是,因为Math.random()的值总是在0&1,对其应用Math.floor()将始终提供值0

因此,您的用户名和密码将始终具有-10000值,这是我认为您不想要的。

相反,试着做Math.floor(Math.random()*10000),它会给你一个在100010000范围内的随机整数。