Javascript 从列表中随机选取一项
我正在学习Javascript,我需要一些帮助。我有一张单子。我试着制作一个列表,你可以通过点击一个按钮,从列表中随机获得一首歌曲,但它似乎不起作用。下面是我的清单,我做错了什么Javascript 从列表中随机选取一项,javascript,random,Javascript,Random,我正在学习Javascript,我需要一些帮助。我有一张单子。我试着制作一个列表,你可以通过点击一个按钮,从列表中随机获得一首歌曲,但它似乎不起作用。下面是我的清单,我做错了什么 随机音乐 var song=数组(“song1”、“song2”、“song3”、“song4”、“song5”、“song6”); var randomSong=song[Math.floor(Math.random()*song.length)]; 下面的方法显示了如何在javascript中获取随机项: c
随机音乐
var song=数组(“song1”、“song2”、“song3”、“song4”、“song5”、“song6”);
var randomSong=song[Math.floor(Math.random()*song.length)];
下面的方法显示了如何在javascript中获取随机项:
const songs=[“song1”、“song2”、“song3”、“song4”、“song5”、“song6];
函数findSong(){
让randomIndex=Math.floor(Math.random()*songs.length);
document.getElementById(“randomSong”).setAttribute(“值”,歌曲[randomIndex]);
}
随机音乐
您的代码几乎是正确的。以下是一个正确的版本:
HTML
修改:
- 将随机代码包装到函数中(按钮的
属性引用的函数)onclick
- 将结果分配给输入
sange
变量。另一个问题是,你没有对所选歌曲、按钮或输入进行任何操作(顺便说一句,它的HTML格式不正确)。你的JS代码可以工作,你只需要将其放回HTML中,然后就完成了。Shitsu的答案更准确,请投票给他,因为我没有足够的声誉。是的,这个答案不正确。由于Math.random()返回一个介于包含0和排除1之间的浮点值,因此将其乘以(song.length-1)(在本例中为5)将得到一个介于包含0和排除5之间的数字,并且它将给出介于0和4之间的整数,完全忽略最后一项。
<div>
<button type="randomSong" onclick="randomSong()">Random Music</button>
<input name="randomSong" id="randomSong">
</div>
var song = Array("song1", "song2", "song3", "song4", "song5", "song6");
function randomSong() {
var randomSong = song[Math.floor(Math.random() * song.length)];
document.getElementById('randomSong').value = randomSong;
}