JavaScript数组对象实现增加一个返回随机元素的方
本文将介绍如何在JavaScript数组对象中增加一个返回随机元素的方法。该方法涵盖了几种不同的随机特性,包括概率随机、顺序随机和随机冒泡。这些技巧适用于所有基于JavaScript 1.5(ECMAscript 3 国际标准)的引擎实现。
我们来理解这个方法的核心特性。概率随机意味着元素的返回是完全随机的,出现几率不定,有限次调用不保证能返回所有元素。顺序随机则是有周期性的,每个周期内元素都会出现一次,但顺序是不确定的。而随机冒泡则是每次调用都从原数组中随机取出一个元素返回,同时原数组会就地改变。
接下来,让我们看一下如何实现这个方法。我们通过扩展Array对象的原型来新增一个random方法,这个方法接收两个参数:Mode和Pop。如果没有传入Mode参数,方法将默认返回概率随机的元素。如果传入了Mode参数但没有传入Pop参数,并且已经存在Random_Queue队列,那么方法将返回顺序随机的元素。如果两个参数都没有传入或者都传入了,那么方法将进行随机冒泡,即从原数组中随机取出一个元素返回,同时原数组会就地改变。
具体实现过程中,我们定义了三个函数:Random_SN、Probability_Random和Sequence_Random。其中,Random_SN函数用于生成一个随机索引;Probability_Random函数用于实现概率随机和顺序随机的功能;Sequence_Random函数用于实现随机冒泡的功能。在Array.prototype.random方法中,我们根据传入的参数调用相应的函数来获取随机元素。
使用示例如下:
// 概率随机
var iElement = iArray.random(); // 元素的返回完全随机,出现几率不定,有限次调用不保证能返回所有元素
// 顺序随机
var iElement = iArray.random(true); // 元素的返回有周期性,在每个周期内,元素都出现一次,但顺序不定
// 随机冒泡
var iElement = iArray.random(true, true); // 每次调用都从原数组中随机取出一个元素返回(原数组就地改变)
本文介绍的方法为JavaScript数组对象增加了返回随机元素的功能,丰富了数组的操作方式。希望本文能够对大家的JavaScript程序设计有所帮助。也希望大家能够在实际开发中灵活运用这些方法,提高编程效率。
编程语言
- JavaScript数组对象实现增加一个返回随机元素的方
- Yii输入正确验证码却验证失败的解决方法
- 使用jQuery给input标签设置默认值
- SQLSERVER分布式事务使用实例
- PHP中header和session_start前不能有输出原因分析
- vue-router路由懒加载的实现(解决vue项目首次加载
- Ajax+PHP实现的模拟进度条功能示例
- vue中如何使用ztree
- thinkPHP通用控制器实现方法示例
- JSP中获取ExtJS.Ajax前台传递的JSON数据实现过程
- Zend Framework缓存Cache用法简单实例
- js中使用使用原型(prototype)定义方法的好处详解
- jQuery位置选择器用法实例分析
- vue动态路由-路由参数改变,视图不更新问题的解决
- AngularJS中的Directive自定义一个表格
- 设置Mysql5.6允许外网访问的详细流程分享