当按下 HTML 图表按钮时,它会激活 createChart() 方法。但是,如果文本区域中的值等于或小于 25 个字符,则网页会卡住。此外,该方法仅引用字母“a”。
<script type = "text/javascript">
orangeBar = "./orange.gif";
function createChart()
{
alphabet = ["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"];
textValue = document.getElementById("text").value;
max = 0;
for (i=0;i<alphabet.length;i++)
{
value = numberOf(alphabet[i], textValue);
if (value > max)
{
max = value;
}
}
document.write(max);
}
function numberOf(letter, string)
{
count = 0;
for (i=0; i<string.length; i++)
{
if (string[i].toLowerCase() == letter)
{
count++;
}
}
return count;
}
</script>
谢谢。我是编码新手。我可以回答任何问题。
最佳答案
当您使用for (i=0;i<alphabet.length;i++)
时, i
成为全局变量。然后你使用相同的 i
在for (i=0; i<string.length; i++)
它改变了你i
createChart()
的功能。放var
之前i
使其本地化。
for (var i=0;i<alphabet.length;i++)
和
for (var i=0; i<string.length; i++)
关于javascript - 较短的字符串会导致网页卡住,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26970369/