文档章节

JS随即打乱数组实现代码

piggybear
 piggybear
发布于 2015/02/16 10:33
字数 302
阅读 12
收藏 0

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

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是随即出现的。所以数组就被随即排序了。*/ 

后面两句输出给你看的。呵呵。

本文转载自:http://blog.csdn.net/aa294194253/article/details/42971233

piggybear
粉丝 3
博文 237
码字总数 37552
作品 0
西安
技术主管
私信 提问
【JavaScript】生成一段序列不同的随机数

在JavaScript如果需要生成一段不同的随机数,最好的方法,还是将要产生的随机数的范围放到这一个数组,并打乱这个数组的顺序。 由于JavaScript里面是没有shuffle这个函数的,所以我们要打乱数...

yongh701
2018/09/01
25
0
JavaScript编程注意事项、技巧大全

收藏自 JavaScript奇技淫巧45招 JavaScript是一个绝冠全球的编程语言,可用于Web开发、移动应用开发(PhoneGap、Appcelerator)、服务器端开发(Node.js和Wakanda)等等。JavaScript还是很多...

kidsamong
09/29
0
0
45个有用的JavaScript技巧,窍门和最佳实践

1. 首次为变量赋值时务必使用var关键字 变量没有声明而直接赋值得话,默认会作为一个新的全局变量,要尽量避免使用全局变量。 2. 使用===取代== ==和!=操作符会在需要的情况下自动转换数据类...

kovlento
05/08
0
0
JavaScript开发的40+个经典技巧

JavaScript是一个绝冠全球的编程语言,可用于Web开发、移动应用开发(PhoneGap、Appcelerator)、服务器端开发(Node.js和Wakanda)等等。JavaScript还是很多新手踏入编程世界的第一个语言。...

大灰狼的小绵羊哥哥
2018/12/06
0
0
打造属于自己的underscore系列(六)- 洗牌算法

javascript如何将一个无序的数组变成一个有序的数组,我们有很多的排序算法可以实现,例如冒泡算法,快速排序,插入排序等。然而我们是否想过,如何将一个有序的数组乱序输出呢?本文将从经典...

不做祖国的韭菜
02/17
0
0

没有更多内容

加载失败,请刷新页面

加载更多

nginx学习笔记

中间件位于客户机/ 服务器的操作系统之上,管理计算机资源和网络通讯。 是连接两个独立应用程序或独立系统的软件。 web请求通过中间件可以直接调用操作系统,也可以经过中间件把请求分发到多...

码农实战
52分钟前
5
0
Spring Security 实战干货:玩转自定义登录

1. 前言 前面的关于 Spring Security 相关的文章只是一个预热。为了接下来更好的实战,如果你错过了请从 Spring Security 实战系列 开始。安全访问的第一步就是认证(Authentication),认证...

码农小胖哥
今天
8
0
JAVA 实现雪花算法生成唯一订单号工具类

import lombok.SneakyThrows;import lombok.extern.slf4j.Slf4j;import java.util.Calendar;/** * Default distributed primary key generator. * * <p> * Use snowflake......

huangkejie
昨天
11
0
PhotoShop 色调:RGB/CMYK 颜色模式

一·、 RGB : 三原色:红绿蓝 1.通道:通道中的红绿蓝通道分别对应的是红绿蓝三种原色(RGB)的显示范围 1.差值模式能模拟三种原色叠加之后的效果 2.添加-颜色曲线:调整图像RGB颜色----R色增强...

东方墨天
昨天
10
1
将博客搬至CSDN

将博客搬至CSDN

算法与编程之美
昨天
12
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部