我正在尝试做的基本上是采用下面的代码并使其工作,以便我可以将几个数组中的项组合成一个句子。所以,例如,现在,如果我运行此代码,它将给我随机项目来自myarray
,即item1
,2
等。但我想要做的是创建几个数组,结果是一个句子,包括(在这来自array1
,array2
,array3
等的随机项目。基本上,使用数组的随机句子生成器。这个和建议的重复项之间的不同之处在于我已经知道如何在单个数组中随机化项目,但是想要将几个数组项组合成一个句子结构。 (array1 item) + (array2 item) + (array3 item)
function GetValue()
{
var myarray= new Array("item1","item2","item3");
var random = myarray[Math.floor(Math.random() * myarray.length)];
document.getElementById("message").innerHTML=random;
}
function GetValue()
{
var myarray= new Array("item1","item2","item3");
var random = myarray[Math.floor(Math.random() * myarray.length)];
document.getElementById("message").innerHTML=random;
}
<input type="button" id="btnSearch" value="Search" onclick="GetValue();" />
<p id="message" ></>
你所要做的就是创建另外两个数组并做同样的事情来得到一个随机的单词然后将它们连接在一起。像这样:
function GetValue() {
var myarray1 = new Array("item1", "item2", "item3");
var myarray2 = new Array("item4", "item5", "item6");
var myarray3 = new Array("item7", "item8", "item9");
var random1 = myarray1[Math.floor(Math.random() * myarray1.length)];
var random2 = myarray2[Math.floor(Math.random() * myarray2.length)];
var random3 = myarray3[Math.floor(Math.random() * myarray3.length)];
var output = random1 + ' ' + random2 + ' ' + random3;
document.getElementById("message").innerHTML = output;
}
<input type="button" id="btnSearch" value="Search" onclick="GetValue();" />
<p id="message">
</>
像这样的东西?
var fragments = [];
fragments.push(["I","You","We","He","She"]);
fragments.push(["called","left","saw","loved","hated"]);
fragments.push(["the","a","some","another"]);
fragments.push(["store","person","rabbit","dog"]);
function getSentence() {
var sentence = '';
for (var i=0; i<fragments.length; i++) {
sentence += fragments[i][Math.floor(Math.random() * fragments[i].length)] + ' ';
}
document.getElementById("message").innerHTML = (sentence.trim() + '.');
}
<input type="button" id="btnSearch" value="Search" onclick="getSentence();" />
<p id="message" ></>