用js实现随机返回数组的一个元素


Posted in Javascript onAugust 13, 2007
<SCRIPT LANGUAGE="JavaScript"> 
<!-- 
var test = ["aa","bb","cc","dd","ee"]; 
document.write(test[Math.floor(Math.random()*test.length)]); 
setInterval("location.reload()",1000); 
//--> 
</SCRIPT>

这是个奇妙的方法。适合做标题性质文字的随机轮换显示。

有两种不同的方式实现:

一、随机取单个,二、让整个数组随机排序

注意:[ ] 符号在javascript中定义一个数组,{ } 则定义一个对象

随机取得数组里面的某一个:

<script type="text/javascript"> 
//随机取得数组中的一个 
var Arr = ["a","b","c","d"];  
var n = Math.floor(Math.random() * Arr.length + 1)-1;  
alert(Arr[n]);  
</script> 

随机排序整个数组Array:

<script type="text/javascript">  
//随机排序整个数组
var Arr1=[1,2,3,4,5,6,7,8,9,10,22,33,55,77,88,99];  
Arr1.sort(function(){return Math.random()>0.5?-1:1;});  
alert(Arr1);  
</script> 

==========================================

PHP 里面有个非常方便的打乱数组的函数 shuffle() ,这个功能在许多情况下都会用到,但 javascript 的数组却没有这个方法,没有不要紧,可以扩展一个,自己动手,丰衣足食嘛。

<script type="text/javascript"> 
//<![CDATA[ 
var shuffle = function(v){ 
for(var j, x, i = v.length; i; j = parseInt(Math.random() * i), x = v[--i], v[i] = v[j], v[j] = x); 
return v; 
}; 
var a = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]; 
document.write("A = ", a.join(","), "<br><br>shuffle(A) = ", shuffle(a)); 
if (!Array.prototype.shuffle) { 
Array.prototype.shuffle = function() { 
for(var j, x, i = this.length; i; j = parseInt(Math.random() * i), x = this[--i], this[i] = this[j], this[j] = x); 
return this; 
}; 
} 
document.write("<br>A.shuffle() = ", a.shuffle()); 
//]]> 
</script>
Javascript 相关文章推荐
用客户端js实现带省略号的分页
Apr 27 Javascript
jquery动态加载select下拉框示例代码
Dec 10 Javascript
javascript实现rgb颜色转换成16进制格式
Jul 10 Javascript
jQuery实现可高亮显示的二级CSS菜单效果
Sep 01 Javascript
JS实现同一个网页布局滑动门和TAB选项卡实例
Sep 23 Javascript
AngularJs基本特性解析(一)
Jul 21 Javascript
D3.js实现直方图的方法详解
Sep 25 Javascript
AngularJS入门教程之Helloworld示例
Dec 25 Javascript
微信小程序实现顶部选项卡(swiper)
Jun 19 Javascript
总结js函数相关知识点
Feb 27 Javascript
vue .sync修饰符的使用详解
Jun 15 Javascript
Vue实现用户自定义字段显示数据的方法
Aug 28 Javascript
JavaScript 模仿vbs中的 DateAdd() 函数的代码
Aug 13 #Javascript
用JavaScript 处理 URL 的两个函数代码
Aug 13 #Javascript
增强的 JavaScript 的 trim 函数的代码
Aug 13 #Javascript
让回调函数 showResponse 也带上参数的代码
Aug 13 #Javascript
分析 JavaScript 中令人困惑的变量赋值
Aug 13 #Javascript
IE/FireFox具备兼容性的拖动代码
Aug 13 #Javascript
JavaScript 编程引入命名空间的方法与代码
Aug 13 #Javascript
You might like
关于手调机和数调机的选择
2021/03/02 无线电
支持php4、php5的mysql数据库操作类
2008/01/10 PHP
PHP函数常用用法小结
2010/02/08 PHP
php中实现记住密码自动登录的代码
2011/03/02 PHP
一个典型的PHP分页实例代码分享
2011/07/28 PHP
PHP针对字符串开头和结尾的判断方法
2016/07/11 PHP
4种Windows系统下Laravel框架的开发环境安装及部署方法详解
2020/04/06 PHP
JObj预览一个JS的框架
2008/03/13 Javascript
jquery zTree异步加载简单实例分享
2013/02/05 Javascript
js生成随机数之random函数随机示例
2013/12/20 Javascript
jQuery元素的隐藏与显示实例
2015/01/20 Javascript
深入浅出 jQuery中的事件机制
2016/08/23 Javascript
BootStrap实现手机端轮播图左右滑动事件
2016/10/13 Javascript
浅谈jquery拼接字符串效率比较高的方法
2017/02/22 Javascript
使用JS和canvas实现gif动图的停止和播放代码
2017/09/01 Javascript
vue.js配合$.post从后台获取数据简单demo分享
2018/08/11 Javascript
Node.js实现简单的爬取的示例代码
2019/06/25 Javascript
vue抽出组件并传值实例
2020/07/31 Javascript
[58:59]完美世界DOTA2联赛PWL S3 access vs CPG 第一场 12.13
2020/12/16 DOTA
使用django-suit为django 1.7 admin后台添加模板
2014/11/18 Python
python实现简单socket程序在两台电脑之间传输消息的方法
2015/03/13 Python
仅用50行Python代码实现一个简单的代理服务器
2015/04/08 Python
对Python捕获控制台输出流的方法详解
2019/01/07 Python
Python装饰器用法实例分析
2019/01/14 Python
python pytest进阶之xunit fixture详解
2019/06/27 Python
更新pip3与pyttsx3文字语音转换的实现方法
2019/08/08 Python
Python实现变声器功能(萝莉音御姐音)
2019/12/05 Python
Django异步任务线程池实现原理
2019/12/17 Python
canvas粒子动画背景的实现示例
2018/09/03 HTML / CSS
美国校服网上商店:French Toast
2019/10/08 全球购物
C++的几个面试题附答案
2016/08/03 面试题
教师求职推荐信范文
2013/11/20 职场文书
更夫岗位责任制
2014/02/11 职场文书
优秀高中生事迹材料
2014/02/11 职场文书
四风专项整治工作情况汇报
2014/10/28 职场文书
vue中this.$http.post()跨域和请求参数丢失的解决
2022/04/08 Vue.js