加载来自2个数组的随机单词,并在一次单击中组合它们

时间:2015-03-01 20:30:37

标签: javascript arrays random

好吧所以我试着打一个电话从javascript中加载2个不同数组的单词

所以最终的结果将是“圆形泡沫”或“芳香的东西”

这就是我所拥有的

       <script type="text/javascript">
             function getDesc() {
             var descr = new Array["straight", "round", "aromatic");                          
             var randomChoice = Math.floor(Math.random()* descr.length)         
             }
             function getNoun() {
             var nouns = new Array("bubble", "office", "things");
             var randomChoice = Math.floor(Math.random()* nouns.length)         
             }

   function getWords() {
     getDesc();
     getNoun();
}
    </script>


       <div id="myBox">
       Words load here
       </div>

       <P>
         <a href="javascript:getWords()">Button</a>
       </p>

1 个答案:

答案 0 :(得分:0)

好的,既然你已经要求解释了,这里有一个:

职能是你的仆人。你告诉他们该做什么,并且通常希望他们返回并带给你一些东西。你的功能并不是特别熟练,因为他们努力工作,但永远不会回来,永远不会带来你所要求的。为了让它们更有用,请为它们配备return语句:

     function getDesc() {
         var descr = ["straight", "round", "aromatic"];                          
         var randomChoice = Math.floor(Math.random() * descr.length);
         return descr[randomChoice]; 
     }

(这可以写得更简洁,但现在不是重点)。

现在,当您的函数实际产生结果时,您可以将这些结果分配给变量并对其进行操作,例如:

   function getWords() {
     var desc = getDesc();
     var noun = getNoun();
     var phrase = desc + " " + noun;
     return phrase;
 }

同样,由于getWords是一个函数,它必须返回一些东西。

最后一部分是显示getWords返回的内容。从简单的

开始,有很多方法可以做到这一点
  alert(getWords())

更多参与

  document.getElementById('someID').innerHTML = getWords()

我将一个确切的实现留作练习。希望有所帮助!