按照你的要求编写的Javascript程序如下(我给你写了两种写法,一种简单,一种复杂一点)
第一种
<script type=text/javascript>var str=window.prompt("请输入一个数:")
alert(str+"是"+str.length+"位数")
</script>
第二种
<script type=text/javascript>var str=window.prompt("请输入一个数:")
var num=parseInt(str)//parseInt函数是字符串型转整型的函数
var n=num
var count=0
while(n!=0){
n=Math.floor(n/10)//floor函数是向下取整函数,比如Math.floor(4.58)=4
count++
}
alert(num+"是"+count+"位数")
</script>
运行结果
请输入一个数:12345
12345是5位数
1whilevar num = 1//1、声明循环变量while (num<=10){//2、判断循环条件 document.write(num+"<br />")//3、执行循环体操作;num++//4、更新循环变量;} while循环()中的表达式,运算结果可以是各种类型,但是最终都会转为真假,转换规则如下。①Boolean:true为真,false为假;②String:空字符串为假,所有非空字符串为真;③Number:0为假,一切非0数字为真;④null/Undefined/NaN:全为假;⑤Object:全为真。2do-while循环while循环特点:先判断后执行;do-while循环特点:先执行再判断,即使初始条件不成立,do-while循环至少执行一次;var num = 10 do{document.write(num+"<br />")//10 9 8 7 6 5 4 3 2 1 0num-- }while(num>=0) document.write(num)//-13,for循环for (var num =1num<=10num++) {document.write(num+" <br />")//1 2 3 4 5 6 7 8 9 10 }4for-in循环 var arr = ['a', 'b', 'c', 'd'] for (let a in arr) {console.log(a)// 0 1 2 3}for (let a of arr) {console.log(a)// a b c d}JQ循环有$.each和$.map('div').each(function (i){ i就是索引值 this 表示获取遍历每一个dom对象})