HTML
因此,我正在尝试拥有一个重复控制台.log它可以更改数字以显示任意数量的数字中的每个可能组合。我做了一组变量来定义我想要使用的数字,并尝试创建一个使用字母数组"console.log(s[0]("来使用字符串中的每个字符的函数。但是每当我尝试运行代码时,它都会将 b 记录到控制台一次并停止。代码:
function start()
{
var inputDigit = document.getElementById("inputDigit").value;
var lowerCaseAlpabet = "abcdefghijklmnopqrstuvwxyz";
var upperCaseAlpabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
var symbols = "*&^%$#@!()<>?/.,|}{][-_=+~`"
var Numbers = "1234567890"
var all = lowerCaseAlpabet+upperCaseAlpabet+symbols+Numbers
console.log(all)
var allLength = all.length - 1
var digit = 0
digit1(all,allLength,digit)
function digit1(all,allLength,zero){
if (digit < allLength) {
var finalValue = all[digit]
var digit = digit + 1
return finalValue
}
return finalValue
var digit = digit + 1
console.log(finalValue)
digit1(all,allLength,digit)
}
}
整个代码文档:
<!DOCTYPE html>
<html>
<head>
<!--<script type="text/javascript" src="http://code.jquery.com/jquery-latest.min.js"></script>-->
<title>Passcode Compiler</title>
<h1>Welcome to the Passcode Compiler</h1>
<h2>Please fill in the blank below with the amount of digits that you need</h2>
</head>
<body>
<script>
</script>
<br> <input type="text" id="inputDigit">compiling length</input><br><!--This takes the year input-->
<button onclick="start()">Submit</button><br><!--This submits the input values above to the javascript code below-->
<script>
function start()
{
var inputDigit = document.getElementById("inputDigit").value;
var lowerCaseAlpabet = "abcdefghijklmnopqrstuvwxyz";
var upperCaseAlpabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
var symbols = "*&^%$#@!()<>?/.,|}{][-_=+~`"
var Numbers = "1234567890"
var all = lowerCaseAlpabet+upperCaseAlpabet+symbols+Numbers
console.log(all)
var allLength = all.length - 1
var digit = 0
digit1(all,allLength,digit)
function digit1(all,allLength,zero){
if (digit < allLength) {
var finalValue = all[digit]
var digit = digit + 1
return finalValue
}
return finalValue
var digit = digit + 1
console.log(finalValue)
digit1(all,allLength,digit)
}
}
</script>
<h4>
</h4>
</body>
</html>
</!doctype>
<!--setTimeout(function(){/*YourCode*/},1000);
关于如何解决这个问题的任何想法?请记住,我没有使输入变得重要,因此无论输入如何,它都应该有效。返回后的代码将不会执行:
return finalValue
var digit = digit + 1
console.log(finalValue)
digit1(all,allLength,digit)
在此代码段中,返回后的任何行都不会执行,因为函数在遇到 return 语句时退出。
此外,如果要递增函数外部定义的数字,则不能再次将其声明为函数内部的var
。所以,你会想要改变你的线路
var digit = digit + 1;
自
digit++;
因此,我将从调整您的代码开始以考虑这些。