数组中的javascript随机数返回单个字母/符号
我有一些代码,我需要从数组中选择一个随机字符串,但它总是返回一个字母或数字。如何解决这个问题数组中的javascript随机数返回单个字母/符号,javascript,arrays,string,Javascript,Arrays,String,我有一些代码,我需要从数组中选择一个随机字符串,但它总是返回一个字母或数字。如何解决这个问题 变量名称=[“亚耶克”、“沃扎鲁”、“盖泽克斯”、“朱贾克斯”、“卢瓦茨”、“梅雷亚”、“库卡克”、“杜伊米特”、“基涅”、“佩佐格”、“伊亚基吉”、“齐赫克”、“奥齐耶布”、“埃胡格”、“布约布”、“乔朱克”、“多皮克斯”、“耶纳卡”、“里贡”、“比希”、“戈齐伊格”、“奥奇克”、“武巴雷尔”、“洛基乌尔”、“吉萨”、“苏索菲克”、“纳乌拉吉”、“秋欧欧”、“埃约姆”、“艾布尔”、“奥科杰姆”、“
变量名称=[“亚耶克”、“沃扎鲁”、“盖泽克斯”、“朱贾克斯”、“卢瓦茨”、“梅雷亚”、“库卡克”、“杜伊米特”、“基涅”、“佩佐格”、“伊亚基吉”、“齐赫克”、“奥齐耶布”、“埃胡格”、“布约布”、“乔朱克”、“多皮克斯”、“耶纳卡”、“里贡”、“比希”、“戈齐伊格”、“奥奇克”、“武巴雷尔”、“洛基乌尔”、“吉萨”、“苏索菲克”、“纳乌拉吉”、“秋欧欧”、“埃约姆”、“艾布尔”、“奥科杰姆”、“埃奥乌乌乌乌乌乌乌”、“皮奥阿”,“Noyikaw”、“Soaeuip”、“Diyufak”、“Fewuy”、“Uakid”、“Aisizeo”、“Mewupen”、“Rinel”、“Cavawax”、“Aepon”、“Wutoq”、“Ousoyan”、“Jaban”、“Pizoq”、“Eeyawok”、“Uuaub”、“Lalajac”、“Gaeaj”、“Lieau”、“Ouzuus”、“Pevux”、“Powig”、“Pever”、“Woqekie”、“Sobukoe”、“Vomab”、“Eirinek”、“Eumeb”、“Raficiw”、“Dezuw”、“Niqeoin”、“Yamet”、“Ouaie”、“Ouaie”、“Ougu”、“Galut”、”奥乌、杰隆、尼奥库、费武夫、尤菲特、卡埃约克、哈皮斯、维尼亚尔、米伊、皮格夫、尤吉奥、武克森、埃利奥尔、卢卡杜克斯、卡德克、库塞韦克、基托波、耶德尔、沃博约克斯、沃沃普、西米克、若努尔、利约斯、埃尼本、帕沃索吉、利迈、多图伊亚、祖沃金、扎XIV、奥约、普托、普托、苏萨凯、拉西、奥克斯、乌布、扎鲁“,”多乌托“,”艾托艾“,”勒洛班“,”吉奥“,”塞韦克“,”多克库克斯“,”拉普雷埃“,”马德德“,”沃乌克“,”佐夫“,”沃奈奥克斯“,”科迪诺“,”戈维斯“,”内齐“;
var卡=[{
关键字:“名称”,
资料:姓名
}];
var c1=Math.floor(Math.random()*cards.length);
警报(卡片[c1]。数据);
您最终会得到这样的卡片
结构:
var cards = [
| {
| key: 'name',
| data: [
| 0 : Yayek,
| 1 : Vozarut,
| etc...
| ?
| |
cards [c1].data
请注意数组数据参考点是如何不存在的。您没有数组数组,您有一个包含对象的数组,其中包含子数组,子数组包含您的名称数据
你应该
cards[0].data[1] -> Vazarut
您最终会得到这样的卡片
结构:
var cards = [
| {
| key: 'name',
| data: [
| 0 : Yayek,
| 1 : Vozarut,
| etc...
| ?
| |
cards [c1].data
请注意数组数据参考点是如何不存在的。您没有数组数组,您有一个包含对象的数组,其中包含子数组,子数组包含您的名称数据
你应该
cards[0].data[1] -> Vazarut
试试下面的方法,效果很好:
HTML代码:
<input type="submit" id="byBtn" value="Click It" onclick="randomfunction()"/>
试试下面的方法,效果很好:
HTML代码:
<input type="submit" id="byBtn" value="Click It" onclick="randomfunction()"/>
删除rc1
。您正在为数据
编制索引,这是一个字符串。只需执行卡片[c1]。数据
Yes,它就不会发出一个字母的警报。但是,它现在会提醒整个阵列。看起来应该是卡[0]。数据[c1]
?但实际上,您想做什么?数据
是一个字符串数组。您的问题是,您将索引错误地输入到卡中。您应该需要像访问卡片[0]['data'][rc1]
一样访问它:var rc1=Math.floor(Math.random()*cards[0]['data'].length)
您确定没有尝试从随机卡片组中获取随机卡片吗?删除rc1
。您正在为数据
编制索引,这是一个字符串。只需执行卡片[c1]。数据
Yes,它就不会发出一个字母的警报。但是,它现在会提醒整个阵列。看起来应该是卡[0]。数据[c1]
?但实际上,您想做什么?数据
是一个字符串数组。您的问题是,您将索引错误地输入到卡中。你应该像访问卡片[0]['data'][rc1]
一样访问它:var rc1=Math.floor(Math.random()*cards[0]['data'].length)
你确定你没有试图从随机卡片组中获取随机卡片吗?然后它会提醒'a',然后执行控制台.log(卡片)
然后跟着兔子下洞。它会提醒“A”,然后做一个控制台。记录(卡片)
然后跟着兔子下洞。这仍然只提醒一个字母这仍然只提醒一个字母