jQuery从字符串数组中选择一个随机值
jQuery pick a random value from a array of strings
我知道如何在PHP中做到这一点,但在javascript数组中却很奇怪。
所以我有一组图像转换,它们有使用缓和方程的效果。对于某些效果,我想从多个值的数组中提取一个随机值:
类似于:
easing: randomFrom(array('easeOutElastic', 'easeOutBounce', 'easeOutSince')),
function randomFrom(array) {
return array[Math.floor(Math.random() * array.length)];
}
// in your code
easing: randomFrom(['easeOutElastic', 'easeOutBounce', 'easeOutSince']),
试试这个:
function randomFrom(arr){
var randomIndex = Math.floor(Math.random() * arr.length);
return arr[randomIndex];
}
在一个演示中,我试图获得一个随机放松字符串;)
function getRandomEasing() {
var easingArr = [];
for(easing in $.easing){
easingArr.push(easing);
}
var rnd = Math.floor(Math.random() * easingArr.length);
return easingArr[rnd];
}
var randomEasing = getRandomEasing();
有趣的演示:http://jsfiddle.net/aamir/psWvy/
我对这个问题反应迟钝。如果你不介意在Array
中添加一个方法,你可以:
Array.prototype.pickARandomElement = function() {
return this[Math.floor(Math.random() * this.length)];
}
试运行:
> [10, 123, 777].pickARandomElement()
10
> [10, 123, 777].pickARandomElement()
777
> [10, 123, 777].pickARandomElement()
777
> [10, 123, 777].pickARandomElement()
123
以下只是为了好玩:
Array.prototype.pickARandomElement = function() {
return this.sort(function() { return Math.random() - 0.5; })[0];
}
这就像洗牌,然后把最上面的牌还回来。但它的时间复杂度是O(n log n)
,所以我不会真正使用它,它只是为了好玩。这里的第一个解决方案是具有O(1)
的解决方案。
相关文章:
- 用jquery切换一个随机类
- 如何创建一个随机的计算机选项,除了你已经选择的选项
- 能够获得一个随机生成的目录名
- Javascript从数组中选择一个随机对象集
- 页面加载时显示一个随机图标
- 一个在线服务,我可以查询一个随机的历史人物的名字
- 在Javascript中从数组中挑选一个随机变量
- Javascript:创建一个随机数学方程数组作为对象,20次
- 如何在javascript中给变量一个随机值
- 如何在一个随机化的有序列表中随机化多个无序列表
- 如何从列表中突出显示一个随机单词
- JavaScript 创建一个随机表生成器并为单元格分配颜色
- 在一个随机生成图像的PHP脚本中,为什么在一个页面上多次调用它总是生成相同的图像
- 生成一个随机数字序列,然后用JavaScript在该序列后面附加一个大写字母
- JavaScript:如何从数组中检索一个随机项(锚定到另一个项)
- 如何让我的重定向脚本添加一个随机后缀来选择网站
- 为饼干键设置一个随机指数值
- 需要建议为wordpress博客作者创建一个随机名称
- 我想用javascript创建一个随机整数
- 如何从数组中选择一个随机项目