JavaScript - 意外的循环标识符

JavaScript - Unexpected identifier for loop

我正在尝试在 javascript 中编写一种暴力破解脚本! 这是我目前所拥有的:

var charset = ["a", "b", "c", "d", "e", "f", "g", "h", "i", "j,", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", "0", "1", "2", "3", "4", "5", "6", "7", "8", "9"];

function bruteForce() {

    var password = document.getElementById("enteredPassword").value;
    var crackedPassword = "";

    while (true) {
        if (crackedPassword != password) {
            for (int i; i < charset.lenght; i++) {
                crackedPassword += charset[i];
                document.getElementById("currentPassword").value = crackedPassword;
            }
        } else {

            document.getElementById("currentPassword").value = crackedPassword;
            alert("finished");
        }
    }
}

它给我以下错误:Uncaught SyntaxError: Unexpected identifier
引起问题的行: for(int i = 0; i < charset.lenght; i++){


并且:Uncaught ReferenceError: bruteForce is not defined
行:<input onClick = "bruteForce()" name="input" type="image" src="arrow.jpg" align="right" />

我认为这与此有关 crackedPassword += charset[i];
但是我看到的here,让我很困惑,因为一定有其他原因!

for(int i = 0; i < charset.lenght; i++){

应该是for(var i = 0; i < charset.length; i++){

<input onClick = "bruteForce()" name="input" type="image" src="arrow.jpg" align="right" /> 这样的内联事件处理程序也期望处理程序在全局范围内。

因此,如果您共享的代码包含在其他一些包装函数中,则它可能无法运行。否则它是导致第二个语法错误的第一个语法错误...

您的 for 循环中的长度拼写错误。应该是长度而不是长度。