如何在 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];

fiddle

您只需要将首字母缩写词拆分为字母,并将每个字母映射到一个单词数组即可。这是 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"