微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

JavaScript中实现PHP的打乱数组函数shuffle实例

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

请刷新页面查看随机排序效果

代码如下:
添加 shuffle 方法

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

通过prototype 给数组添加一个方法

代码如下:
var a = [0,9];

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 举报,一经查实,本站将立刻删除。

相关推荐