JQuery - 随机.replace()错误

NiK*_*PrO 3 javascript random variables jquery replace

我有随机.replace()的问题,它总是显示相同的随机数,我试图用不同的随机数替换$ random $.

$(document).ready(function() {
  var arr = [
    '1',
    '2',
    '3',
    '4',
    '5',
    '6',
    '7',
    '8',
    '9',
    '10'
  ]
  $("#present-users").children('li.present-user').each(function() {
    arr.push($(this).find('img')[0].title);
  });
  var random = arr[Math.floor(Math.random() * arr.length)];
  var text = "$random$ $random$ $random$ $random$ $random$ $random$ $random$ $random$ $random$ $random$ $random$ $random$ $random$ $random$ $random$ $random$ $random$ $random$ $random$ $random$ $random$ $random$".replace(/\$random\$/g, random);
  alert(text)
});
Run Code Online (Sandbox Code Playgroud)

jsfiddle的例子

谢谢,尼古拉

Str*_*ner 5

一种解决方案是使用.replace(regex, function)过载:

str.replace(/\$random\$/g, function() {
    return arr[Math.floor(Math.random() * arr.length)];
});
Run Code Online (Sandbox Code Playgroud)

更新小提琴