如何在 Javascript 中按设定顺序显示从列表中随机选择的 3 个单词?
How do I display 3 randomly selected words from a list in set order in Javascript?
我们的想法是使用以 'R'、'E' 和 'G' 开头的单词列表为首字母缩略词 'REG' 生成随机反向首字母缩略词。每次您访问代码所在的页面时,它应该从每个列表中选择一个词并将它们按 REG 顺序排列(例如:Rodent Echo Ghost、Ronald Evening Garden 等)
代码的结果当然应该在网页上显示为文本。
可选的是选择字体系列、大小和颜色的能力。
我四处寻找这种代码,但无济于事。可能也值得一提的是,我对 Javascript 一点经验都没有,所以非常感谢您的帮助。
您可以使用此代码获取所需的字符串。您可以在每个数组中添加任意数量的以字母开头的单词..
然后,变量 acron 将保存您想要的字符串。你可以在任何需要的地方注入它。因为我不知道你想用它做什么,所以我不能详细说明。
var r=[
"Rodent",
"Ronald",
"Robocop",
];
var e=[
"Echo",
"Evening",
"Everyone",
];
var g=[
"Ghost",
"Garden",
"Green"
]
var randr=Math.floor((Math.random() * r.length) );
var rande=Math.floor((Math.random() * e.length) );
var randg=Math.floor((Math.random() * g.length) );
var acron=r[randr]+" "+e[rande]+" " + g[randg];
您只需要将首字母缩写词拆分为字母,并将每个字母映射到一个单词数组即可。这是 jsFiddle.
function findWordsForAcronym(acronym) {
var words = {
'a': [],
'b': [],
'c': [],
'd': [],
'e': ['Echo', 'Evening'],
'f': [],
'g': ['Ghost', 'Garden'],
'h': [],
'i': [],
'j': [],
'k': [],
'l': [],
'm': [],
'n': [],
'o': [],
'p': [],
'q': [],
'r': ['Rodent', 'Ronald'],
's': [],
't': [],
'u': [],
'v': [],
'w': [],
'z': [],
'y': [],
'z': []
};
return acronym.toLowerCase().split('').map(
function(letter){
return words[letter][parseInt(Math.random()*words[letter].length)];
}
).join(' ');
}
findWordsForAcronym('REG'); // "Rodent Echo Garden"
我们的想法是使用以 'R'、'E' 和 'G' 开头的单词列表为首字母缩略词 'REG' 生成随机反向首字母缩略词。每次您访问代码所在的页面时,它应该从每个列表中选择一个词并将它们按 REG 顺序排列(例如:Rodent Echo Ghost、Ronald Evening Garden 等)
代码的结果当然应该在网页上显示为文本。
可选的是选择字体系列、大小和颜色的能力。
我四处寻找这种代码,但无济于事。可能也值得一提的是,我对 Javascript 一点经验都没有,所以非常感谢您的帮助。
您可以使用此代码获取所需的字符串。您可以在每个数组中添加任意数量的以字母开头的单词..
然后,变量 acron 将保存您想要的字符串。你可以在任何需要的地方注入它。因为我不知道你想用它做什么,所以我不能详细说明。
var r=[
"Rodent",
"Ronald",
"Robocop",
];
var e=[
"Echo",
"Evening",
"Everyone",
];
var g=[
"Ghost",
"Garden",
"Green"
]
var randr=Math.floor((Math.random() * r.length) );
var rande=Math.floor((Math.random() * e.length) );
var randg=Math.floor((Math.random() * g.length) );
var acron=r[randr]+" "+e[rande]+" " + g[randg];
您只需要将首字母缩写词拆分为字母,并将每个字母映射到一个单词数组即可。这是 jsFiddle.
function findWordsForAcronym(acronym) {
var words = {
'a': [],
'b': [],
'c': [],
'd': [],
'e': ['Echo', 'Evening'],
'f': [],
'g': ['Ghost', 'Garden'],
'h': [],
'i': [],
'j': [],
'k': [],
'l': [],
'm': [],
'n': [],
'o': [],
'p': [],
'q': [],
'r': ['Rodent', 'Ronald'],
's': [],
't': [],
'u': [],
'v': [],
'w': [],
'z': [],
'y': [],
'z': []
};
return acronym.toLowerCase().split('').map(
function(letter){
return words[letter][parseInt(Math.random()*words[letter].length)];
}
).join(' ');
}
findWordsForAcronym('REG'); // "Rodent Echo Garden"