JS打乱数组最高效的方法

转载 2015年11月18日 22:29:24

这个方法是我见过对高效的。

 

复制代码
var arr=[];
for(var i=0;i<100;i++){
arr[i]
=i;
}
arr.sort(
function(){ return 0.5 - Math.random() })
var str=arr.join();
alert(str);
复制代码

 

 

代码解释:

 

var arr=[];//新建一个数组 这是大家推荐的方式。
//
而不推荐使用 var arr=new Array();

 

这句不用解释了。

for(var i=0;i<100;i++){
arr[i]
=i;
}
//循环给数组赋值

 

 

 

关键第地方来了

 

复制代码
arr.sort(function(){ return 0.5 - Math.random() })
//sort 是对数组进行排序
//
他的是这样工作的。每次从数组里面挑选两个数 进行运算。
//
如果传入的参数是0 两个数位置不变。
//
如果参数小于0 就交换位置
//
如果参数大于0就不交换位置
//
接下来用刚才的较大数字跟下一个进行比较。这样循环进行排序。

/*恰好。我们利用了这一点使用了0.5 - Math.random 这个运算的结果要么是大于0,要么是小于0.这样要么交换位置,要么不交换位置。当然大于或者小于0是随即出现的。所以数组就被随即排序了。*/
复制代码

 


相关文章推荐

高效的去掉js数组或者字符串中重复的对象方法

去掉一个字符串或者数组中重复对象的方法有很多种,zui

js数组使用方法

  • 2016年04月11日 09:14
  • 1KB
  • 下载

一步看懂JS数组对象的方法

  • 2017年09月01日 11:36
  • 300KB
  • 下载

最精简高效的PHP数组转HTML代码的方法array2html

目前网络上常规的 PHP 数组转 HTML 代码的方法都是通过循环 for 或者 foreach 来遍历数组,然后通过字符替换、正则表达式替换或者字符拼接等方法来生成 HTML 代码,为了避免使用循环...
  • hpchn
  • hpchn
  • 2014年02月14日 13:17
  • 666

关于Js的二维数组定义和方法

  • 2012年04月25日 17:27
  • 23KB
  • 下载

使用JS创建table的高效方法

http://hotpepper.iteye.com/blog/235902 项目开发中,为了提高用户体验,查询时使用dwr向后台发送查询请求,然后根据查询结果异步更新页面中table的内容。  ...

数组随机打乱顺序方法

  • 2011年04月25日 22:10
  • 542B
  • 下载

【笔记】JS通过map()方法转换数组中所有字符串首字母为大写字母

【笔记】JS通过map()方法转换数组中所有字符串首字母为大写字母所涉及到的方法: toString() 方法可把一个逻辑值转换为字符串,并返回结果。 substr() 方法可在字符串中抽取从 st...

笔记-JS数组遍历方法之forEach()和map()

js数组遍历方法个人笔记

从零开始学_JavaScript_系列(15)——js系列<4>(数值、字符串、对象、数组、函数、日期的基本方法)

注:$("#a").text( 内容 ) 是jquery的方法,可以理解为在   添加内容变为: 内容 (6)数值 注意,Math的M需要大写 ①绝对值:Math.abc(x)...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:JS打乱数组最高效的方法
举报原因:
原因补充:

(最多只允许输入30个字)