用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 相关文章推荐
JavaScript中Math对象使用说明
Jan 16 Javascript
js实现广告漂浮效果的小例子
Jul 02 Javascript
JS中Date日期函数中的参数使用介绍
Jan 02 Javascript
js设置控件的隐藏与显示的两种方法
Aug 21 Javascript
ECMAScript6函数默认参数
Jun 12 Javascript
ajax与json 获取数据并在前台使用简单实例
Jan 19 Javascript
jQuery源码解读之extend()与工具方法、实例方法详解
Mar 30 jQuery
微信小程序倒计时功能实现代码
Nov 09 Javascript
使用node打造自己的命令行工具方法教程
Mar 26 Javascript
vue-cli3全面配置详解
Nov 14 Javascript
在 Vue 中编写 SVG 图标组件的方法
Feb 24 Javascript
package.json各个属性说明详解
Mar 11 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
php中常用的预定义变量小结
2012/05/09 PHP
解析linux下安装memcacheq(mcq)全过程笔记
2013/06/27 PHP
php json_encode值中大括号与花括号区别
2013/09/30 PHP
destoon会员注册提示“数据校验失败(2)”解决方法
2014/06/21 PHP
PHP的PDO错误与错误处理
2019/01/27 PHP
Laravel框架搜索分页功能示例
2019/02/01 PHP
通过javascript设置css属性的代码
2009/12/28 Javascript
用原生JS获取CLASS对象(很简单实用)
2014/10/15 Javascript
如何在MVC应用程序中使用Jquery
2014/11/17 Javascript
Javascript 多物体运动的实现
2014/12/24 Javascript
js实现星星打分效果的方法
2020/07/05 Javascript
JavaScript常用标签和方法总结
2015/09/01 Javascript
JavaScript数据存储 Cookie篇
2016/07/02 Javascript
bootstrap timepicker在angular中取值并转化为时间戳
2017/06/13 Javascript
vue-router2.0 组件之间传参及获取动态参数的方法
2017/11/10 Javascript
js传递数组参数到后台controller的方法
2018/03/29 Javascript
JS实现二维数组横纵列转置的方法
2018/04/17 Javascript
详解vue项目中如何引入全局sass/less变量、function、mixin
2018/06/02 Javascript
基于vue-cli搭建多模块且各模块独立打包的项目
2019/06/12 Javascript
vue使用i18n实现国际化的方法详解
2019/09/05 Javascript
nestjs返回给前端数据格式的封装实现
2021/02/22 Javascript
简单介绍使用Python解析并修改XML文档的方法
2015/10/15 Python
python批量导入数据进Elasticsearch的实例
2018/05/30 Python
python tkinter图形界面代码统计工具
2019/09/18 Python
Python龙贝格法求积分实例
2020/02/29 Python
Python创建临时文件和文件夹
2020/08/05 Python
将不规则的Python多维数组拉平到一维的方法实现
2021/01/11 Python
AmazeUi Tree(树形结构) 应用小结
2020/08/17 HTML / CSS
日本最新流行服饰网购:Nissen
2016/07/24 全球购物
八年级音乐教学反思
2014/01/09 职场文书
2015年路政工作总结
2015/05/22 职场文书
2015年计算机教学工作总结
2015/07/22 职场文书
CSS3 实现NES游戏机的示例代码
2021/04/21 HTML / CSS
GoLang中生成UUID唯一标识的实现
2021/05/08 Golang
Spring Security中用JWT退出登录时遇到的坑
2021/10/16 Java/Android
bose降噪耳机音能消除人声吗
2022/04/19 数码科技