题目描述:输入一个数(不限位数),输出一个数字的位数。
自己的做法:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>exercise3</title>
</head>
<body>
<script type="text/javascript">
var num = prompt("请输入一个数字:","");
var weishu = 0;
if(num != null && num != ""){
num1 = num;
while(num > 0){
weishu++;
num = parseInt(num/10);
}
}
document.write(num1 + "有" + weishu + "位数。");
</script>
</body>
</html>
别人的做法:
<html>
<head lang="en">
<meta charset="UTF-8">
<title>C语言经典题目3</title>
<script>
function demo() {
var n = document.getElementById("number").value;
if (!isNaN(n)) {var len = n.length;
}
else{
alert("请输入数字!");
return;
}
document.getElementById("number").value = len;
}
</script>
</head>
<body>
<input type="text" id="number" width="100" height="50">
<button onclick="demo()">点我啊</button>
</body>
</html>
总结:
1.输入可以用prompt();也可以根据ID获得;
2.isNaN()函数用于检查其参数是否是非数字值。如果是非数字值,返回true,如果是数字,则返回false(isNaN() 函数通常用于检测 parseFloat() 和 parseInt() 的结果,以判断它们表示的是否是合法的数字。当然也可以用 isNaN() 函数来检测算数错误,比如用 0 作除数的情况。);
3.由于Javascript语言的弱类型性质,默认数字是字符串类型,只要判断这个字符串的长度即可,即num.length;