我正在开发即将发布的小型Chrome扩展程序,但是在此扩展程序中,我必须从数组中取一个随机项并将其显示在屏幕上。在过去,我使用过很多Ruby代码,并记住方法'.sample',它在屏幕上显示一个数组中的随机项。
示例(在Ruby中):
farm_animals = ['cow', 'chicken', 'pig', 'horse']
puts farm_animals.sample
输出可能最终会像......
>> cow
Javascript中有这个方便的数组方法吗?谢谢!
答案 0 :(得分:4)
尝试:
var farm_animals = ['cow', 'chicken', 'pig', 'horse']
alert(farm_animals[Math.floor ( Math.random() * farm_animals.length )])
或作为一种功能:
function sample(array) {
return array[Math.floor ( Math.random() * array.length )]
}
console.log(sample(farm_animals))
答案 1 :(得分:2)
如果你不反对黑客攻击内置对象原型:
Array.prototype.sample = function() {
return this[~~(Math.random() * this.length)];
}
然后
var samp = ["hello", "friendly", "world"].sample();
给你一个随机元素。
很多人 - 大多数人 - 会说这种不那么有用的功能不值得污染这样的内置原型。跟随你的幸福。