如何警告 javascript 中数组中的单个元素?
How to alert a single element from an array in javascript?
大家好我是新来的,我才刚刚开始学习javascript。
我需要想出一段代码来提醒数组中的单个随机元素。我设法想出了随机元素,但它会从数组中提醒所有十个元素。虽然我需要提醒一个人并停下来。
这是我目前所拥有的。
var myList = new Array("gusty", "long", "tremendous", "play", "white",
"literate", "baboon", "dusty", "government", "cheer");
for(i = 0; i < myList.length; i++)
{
var y = Math.floor(Math.random() * 10);
alert(myList[y]);
}
所以当我在浏览器中加载它时,我得到十个随机单词。但我只想要一个。我厌倦了将 var 放入警报中,但这没有做任何事情。
只需删除 for
循环。由于您使用索引 (myList[y]
) 引用数组中的元素,因此您不需要 for
循环。
var myList = new Array("gusty", "long", "tremendous", "play", "white",
"literate", "baboon", "dusty", "government", "cheer");
var y = Math.floor(Math.random() * 10);
alert(myList[y]);
您通常会使用 for
循环来重复某个任务。因此,在您的原始代码中,您将生成 10 个随机数,从而从数组中访问 10 个随机项。如果你只需要一个,你可以简单地删除循环。
如果您只想提醒一个,则无需循环。该循环导致每次选择一个随机值并发出警报。
您还可以进行一些其他优化。
//we don't normally use new Array() without good reason; use an array literal
//i.e. [1, 2, 3, 'foo'] instead
var myList = ["gusty", "long", "tremendous", "play", "white",
"literate", "baboon", "dusty", "government", "cheer"];
//remove the loop - and instead of hard-coding 10, let's read the actual length
var y = Math.floor(Math.random() * myList.length);
alert(myList[y]);
Here's a wider discussion 数组文字与通过 Array()
构造函数创建的数组。
大家好我是新来的,我才刚刚开始学习javascript。
我需要想出一段代码来提醒数组中的单个随机元素。我设法想出了随机元素,但它会从数组中提醒所有十个元素。虽然我需要提醒一个人并停下来。
这是我目前所拥有的。
var myList = new Array("gusty", "long", "tremendous", "play", "white",
"literate", "baboon", "dusty", "government", "cheer");
for(i = 0; i < myList.length; i++)
{
var y = Math.floor(Math.random() * 10);
alert(myList[y]);
}
所以当我在浏览器中加载它时,我得到十个随机单词。但我只想要一个。我厌倦了将 var 放入警报中,但这没有做任何事情。
只需删除 for
循环。由于您使用索引 (myList[y]
) 引用数组中的元素,因此您不需要 for
循环。
var myList = new Array("gusty", "long", "tremendous", "play", "white",
"literate", "baboon", "dusty", "government", "cheer");
var y = Math.floor(Math.random() * 10);
alert(myList[y]);
您通常会使用 for
循环来重复某个任务。因此,在您的原始代码中,您将生成 10 个随机数,从而从数组中访问 10 个随机项。如果你只需要一个,你可以简单地删除循环。
如果您只想提醒一个,则无需循环。该循环导致每次选择一个随机值并发出警报。
您还可以进行一些其他优化。
//we don't normally use new Array() without good reason; use an array literal
//i.e. [1, 2, 3, 'foo'] instead
var myList = ["gusty", "long", "tremendous", "play", "white",
"literate", "baboon", "dusty", "government", "cheer"];
//remove the loop - and instead of hard-coding 10, let's read the actual length
var y = Math.floor(Math.random() * myList.length);
alert(myList[y]);
Here's a wider discussion 数组文字与通过 Array()
构造函数创建的数组。