JS随机排序数组实现方法分析
2018-10-12 14:03
846 查看
本文实例讲述了JS随机排序数组。分享给大家供大家参考,具体如下:
做随机显示推荐广告的时候,需要随机排序数据数组,就动手写了一个,如下:
function randomOrder (targetArr) { var originalArr = targetArr; var newArr = []; var arrLength = targetArr.length; var j = -1; var tmpObj = {}; for(var i = 0;i < arrLength;i++){ while(true) { if(tmpObj[j = parseInt(arrLength * Math.random())] == undefined) { tmpObj[j] = 1; console.log(j); break; } } newArr[i] = originalArr[j]; } return newArr; }
但是..后来在网上看到大师写的方法,觉得自己瞬间被秒杀到渣都不剩,如下:
function sortNumber(a,b) { return Math.random() - 0.5; } var arr = arr=[9,3,1,2,5,8,4,7,6,0]; arr.sort(sortNumber);
自己实在有太多太多需要学习了!!
PS:这里再为大家提供几款相关在线工具供大家参考使用:
在线随机数字/字符串生成工具:
http://tools.jb51.net/aideddesign/suijishu
在线中英文根据首字母排序工具:
http://tools.jb51.net/aideddesign/zh_paixu
在线文本倒序翻转排序工具:
http://tools.jb51.net/aideddesign/flipped_txt
更多关于JavaScript相关内容感兴趣的读者可查看本站专题:《JavaScript数学运算用法总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript数组操作技巧总结》、《JavaScript排序算法总结》、《JavaScript遍历算法与技巧总结》、《JavaScript查找算法技巧总结》及《JavaScript错误与调试技巧总结》
希望本文所述对大家JavaScript程序设计有所帮助。
您可能感兴趣的文章:
相关文章推荐
- 数组排序方法的性能比较(2):Array.Sort<T>实现分析
- 直接选择排序的C++实现及随机数组的产生方法
- JS数组排序方法实例分析
- 一起谈.NET技术,数组排序方法的性能比较(3):LINQ排序实现分析
- 数组排序方法的性能比较(3):LINQ排序实现分析
- 由数组随机化排序引出的对于js中sort()方法的理解分析
- js中数组排序sort方法的原理分析
- js实现随机选取[10,100)中的10个整数,存入一个数组,并排序。 另考虑(10,100]和[10,100]两种情况。
- JS简单实现数组去重的方法分析
- 由数组随机化排序引出的对于js中sort()方法的理解分析
- 数组排序方法的性能比较(3):LINQ排序实现分析
- JS数组搜索之折半搜索实现方法分析
- 用js实现随机选取10–100之间的10个数字,存入一个数组,并排序
- 洗牌方法-----JS数组随机排序
- 艾伟_转载:数组排序方法的性能比较(中):Array.Sort<T> 实现分析
- 分享两个JavaScript打乱数组顺序实现随机排序洗牌的方法(应用于音乐视频的随机播放等)
- 数组排序方法的性能比较(3):LINQ排序实现分析
- 用 js 实现随机选取 10–100 之间的 10 个数字,存入一个数组,并排序
- 数组排序方法的性能比较(2):Array.Sort<T>实现分析
- 一起谈.NET技术,数组排序方法的性能比较(中):Array.Sort<T> 实现分析