我正在尝试JavaScript,但是我的浏览器拒绝执行这个我用switch case函数编写的程序。目标是找出一个字符串中的元音数量(考虑所有输入都是小写的)
当我点击“提交”按钮时,框中的文本消失了,但什么也没有发生。警告"hello“也没有出现,所以我假设函数甚至没有被执行。
<html>
<head>
<script>
function vow(form)
{
alert("hello");
var a = new Array(10);
a = form.t1.value;
var flag = 0;
var i;
for(i=0;i<10;i++)
{
switch (a[i])
{
case 'a':
flag++;
break;
case 'e':
flag++;
break;
case 'i';
flag++;
break;
case 'o';
flag++;
break;
case 'u';
flag++;
break;
}
}
alert(flag);
}
</script>
</head>
<body>
<form>
<input type="text" name="t1">
<input type="submit" value="SUBMIT" onClick="vow(this.form)"/>
</form>
</body>
</html>发布于 2012-10-17 02:36:37
你可以做得更简单..例如,从输入中删除元音,并检查与原始字符串的长度差异。
var count = input.length - input.replace(/[aeiou]/gi, '').length;EDIT:或者更简单,删除除元音之外的所有内容;-)
function vow(form) {
alert(form.t1.value.replace(/[^aeiou]/gi, '').length);
}https://stackoverflow.com/questions/12921195
复制相似问题