JS算法练习一

JS算法练习

1、随机生成一个五位以内的数,然后输出该数共有多少位,每位分别是什么?

①.数组添加元素的方式得到位数(数组长度)与值(数组元素) ①.数组添加元素的方式得到位数(数组长度)与值(数组元素)
var rand=Math.floor(Math.random()*100000);
/* ---生成随机五位数---
	①Math.random()取随机数,范围[0,1),100000是放大其范围。
    ②Math.floor---向下取整---*/
console.log(rand);
/*---在控制台打印这个五位数以观察---*/
var arr=[];
while (rand !== 0) {
	arr.unshift(rand % 10);
	rand=Math.floor(rand / 10);
}
/* ---将这个生成的随机数每一位放入数组中-	①当随机数不等于0时,随机数从个位开始依次求模,再放入数组中每求摸一次,随机数减少一	②arr.unshift()将一个或多个元素添加到数组的开头,并返回新数组的长度。
*/
console.log("共"+arr.length+"位");
console.log(arr);
/*---在控制台打印以观察---*/
②.数据类型转换得出位数,遍历数组得到每一位
var rand=Math.floor(Math.random()*100000)
/* ---生成随机五位数---
    ①Math.random()取随机数,范围[0,1),100000是放大其范围。
    ②Math.floor---向下取整---*/
console.log(rand)
/*---在控制台打印这个五位数以观察---*/
var s=rand+""
/*---将随机数转换为一个字符串---
    通常情况下使用这种“+”号形式的引式转换,和s=String(num)强制类型转换,达到的效果相同
*/
console.log(s.length)
/*---打印出的字符串长度即为随机数位数---*/
var arr=new Array(s.length)
for (var i = arr.length-1; i >=0; i--) {
	arr[i]=rand%10;
	rand=Math.floor(rand/10)
}
/*---遍历随机数位数数组每一位得到值---*/
console.log(arr)
/*---打印数组以观察---*/
posted @ 2017-05-04 09:46  脱缰的小毛驴  阅读(645)  评论(0编辑  收藏  举报