文档章节

JS随即打乱数组实现代码

piggybear
 piggybear
发布于 2015/02/16 10:33
字数 302
阅读 7
收藏 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
09/01
0
0
用js来实现那些数据结构及算法—目录

  首先,有一点要声明,下面所有文章的所有内容的代码,都不是我一个人独立完成的,它们来自于一本叫做《学习JavaScript数据结构和算法》(第二版),人民邮电出版社出版的这本书。github代...

zaking
05/10
0
0
Emscripten教程之连接C++和JavaScript(三)

翻译:云荒杯倾 本文是Emscripten-WebAssembly专栏系列文章之一,更多文章请查看专栏。 也可以去作者的博客阅读文章。 Emscripten提供了多种方法来连接和交互JavaScript和编译的C或c++,本文...

云荒杯倾
2017/09/18
0
0
编写一个简单的JavaScript模板引擎

本文首发于我的知乎专栏,转发于掘金。若需要用于商业用途,请经本人同意。 尊重每一位认真写文章的前端大佬,文末给出了本人思路的参考文章。 前言 能够访问到这篇文章的同学,初衷是想知道...

凯斯
07/03
0
0
精读《JS 引擎基础之 Shapes and Inline Caches》

1 引言 本期精读的文章是:JS 引擎基础之 Shapes and Inline Caches 一起了解下 JS 引擎是如何运作的吧! JS 的运作机制可以分为 AST 分析、引擎执行两个步骤: JS 源码通过 parser(分析器)...

黄子毅
06/25
0
0

没有更多内容

加载失败,请刷新页面

加载更多

HashTable

Hashtable 是一个散列表,它存储的内容是键值对(key-value)映射 Hashtable 继承于Dictionary,实现了Map、Cloneable、java.io.Serializable接口 Hashtable 的函数都是同步的,这意味着它是线...

职业搬砖20年
19分钟前
1
0
Linux系统状态查看命令1

10月23日任务 10.1 使用w查看系统负载 10.2 vmstat命令 10.3 top命令 10.4 sar命令 10.5 nload命令 查看系统负载 w命令 # 第一行:当前系统时间,系统启动时间,登录的用户,系统负载:1分钟...

robertt15
34分钟前
1
0
缓存那些事

前言 一般而言,现在互联网应用(网站或App)的整体流程,可以概括如图1所示,用户请求从界面(浏览器或App界面)到网络转发、应用服务再到存储(数据库或文件系统),然后返回到界面呈现内容...

Skqing
44分钟前
2
0
nginx开启stub_status模块配置方法

nginx开启stub_status模块配置方法 2017年12月13日 15:57:29 ly_dengle 阅读数:3765 标签: stub_statusnginxnginx开启stub_status模块 更多 个人分类: 软件工具php 版权声明:本文为博主原...

linjin200
50分钟前
3
0
挑逗 Java 程序员的那些 Scala 绝技

有个问题一直困扰着 Scala 社区,为什么一些 Java 开发者将 Scala 捧到了天上,认为它是来自上帝之吻的完美语言;而另外一些 Java 开发者却对它望而却步,认为它过于复杂而难以理解。同样是 ...

joymufeng
53分钟前
134
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部