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

//方法一:

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<script type="text/javascript">
/*
* 函数名:randomFiveNumber
* 参数:无
* 作业:随机生成一个5位以内的数,然后输出该数共有多少位,每位分别是什么
*/
function randomFiveNumber ()
{
var arr = [];
var iRandomOne = parseInt(Math.random() * 100000);
//产生5位数的随机整数,生成的数为number
var sRandomOne = String(iRandomOne);
//转化为string就可以用string 的length进行分割
for(var i = 0; i < sRandomOne.length; i++)
{
arr.push(sRandomOne[i]);
}
console.log('生成的随机数:' + iRandomOne);
console.log('位数:' + sRandomOne.length);
for(var i = 0; i < arr.length; i++)
{
console.log('第'+ (i + 1) + '个' + arr[i]);
}
}

randomFiveNumber();

</script>
</head>
<body>
</body>
</html>

 

效果图 ↓

 

//方法二:

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<script type="text/javascript">
/*
* 函数名:randomFiveNumber
* 参数:无
* 作用:随机生成一个5位以内的数,然后输出该数共有多少位,每位分别是什么
*/
function randomFiveNumber ()
{
var arr = [];
for(i = 1; i <= 5; i++)
{
var iRandomOne = parseInt(Math.random() * 10);
//产生10以内的随机整数
arr.push(iRandomOne);
}
for(j = 0; j < 5; j++)
{
//判断有几个数:若第一个数为0则删除第一个数,若不是0,则不删除跳出循环
if(arr[0] == 0)
//arr[0]的作用是始终做数组的一个数进行判断
{
arr.shift();
}else{break;}
}
console.log('随机数:' + arr.join(''));
console.log('个数: ' + arr.length + '个');

for(var i = arr.length - 1; i >= 0; i--)
{
console.log('第' + (arr.length - i) + '个'+ arr[i]);
}
}
randomFiveNumber();

</script>
</head>
<body>
</body>
</html>

效果图 ↓

 

/*
* 区别:
* 方法一是先获取5位数的随机数,然后再变成字符串切割成数组,最后输出数组的每个数
* 方法二是现获取每位随机数然后保存到数组中,再对数组进行判断arr[0]是否为0,为0则删除,最后对arr的每个值输出,arr的长度的输出,arr合并成字符串输出
* 本质上是没有区别的
*/

 

posted @   背壳前进的牛  阅读(5950)  评论(0编辑  收藏  举报
编辑推荐:
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 使用C#创建一个MCP客户端
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示