用js实现随机返回数组的一个元素
2007-08-13 19:50
821 查看
复制代码 代码如下:
<SCRIPT LANGUAGE="JavaScript">
<!--
var test = ["aa","bb","cc","dd","ee"];
document.write(test[Math.floor(Math.random()*test.length)]);
setInterval("location.reload()",1000);
//-->
</SCRIPT>
这是个奇妙的方法。适合做标题性质文字的随机轮换显示。
<script type="text/javascript">
//随机取得数组中的一个
var Arr = ["a","b","c","d"];
var n = Math.floor(Math.random() * Arr.length + 1)-1;
alert(Arr
);
</script>
<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>
<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>
<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
);
</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>
您可能感兴趣的文章:
相关文章推荐
- 用js实现随机返回数组的一个元素
- JavaScript数组对象实现增加一个返回随机元素的方法
- 有一个数组,每次从中间随机取一个,然后放回去,当所有的元素都被取过,返回总共的取的次数。写一个函数实现。复杂度是什么。
- JavaScript数组对象实现增加一个返回随机元素的方法
- 写一个函数实现数组中的元素随机乱序排序
- js-随机产生一个由10个元素组成的数组
- (转)js在数组中删除重复的元素自保留一个(两种实现思路)
- JS:调用方法实现向数组中追加一个元素
- 编写js扩展方法实现判断一个数组中是否包含某个元素
- RandomFrom 随机返回字符串数组AValues中的一个元素
- js获取两个数组不同的元素并返回不同元素组成的数组,并对不同的元素添加一个新的属性
- JS实现随机显示一个数组中的数值;
- 【实践】js实现随机不重复抽取数组中元素
- js实现从数组里随机获取元素
- js实现从数组里随机获取元素
- 一个有趣的问题:怎么在JS的数组中去除重复元素?(JAVA实现吧..)
- m个元素的数组,随机选择n个不重复元素(js实现)
- js在数组中删除重复的元素自保留一个(两种实现思路)
- js实现数组内元素随机排序