PHP 里面有个非常方便的打乱数组的函数 shuffle() ,这个功能在许多情况下都会用到,但 javascript 的数组却没有这个方法,没有不要紧,可以扩展一个,自己动手,丰衣足食嘛。
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(","),"
shuffle(A) = ",shuffle(a));
//]]>
输出结果:
shuffle(A) = 1,9,7 A.shuffle() = 0,7
if (!Array.prototype.shuffle) {
Array.prototype.shuffle = function() {
for(var j,i = this.length; i; j = parseInt(Math.random() * i),x = this[--i],this[i] = this[j],this[j] = x);
return this;
};
}
document.write("A = ","
A.shuffle() = ",a.shuffle());
//]]>
原文地址:https://www.jb51.cc/js/57581.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。