【问题标题】:load random word from 2 arrays and combine them in a single click从 2 个数组中加载随机单词并单击组合它们
【发布时间】:2015-03-01 20:30:36
【问题描述】:

好的,所以我尝试进行一次调用以从 javascript 中的 2 个不同数组中加载 1 个单词

所以最终结果将是“圆形气泡”或“芳香物”

这就是我所拥有的

       <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>

【问题讨论】:

  • 您是在寻找解释还是只是想要一段可复制粘贴的工作代码?
  • 你试过什么?您只有在另一个函数中调用了两个函数
  • 如果有人能告诉我我错了。是的,请向我解释我正在努力学习。我知道我需要从每个数组中提取一个随机词,并且我已经让它工作了,我可以从一个或另一个中提取,但我试图从每个中提取一个。

标签: javascript arrays random


【解决方案1】:

好的,既然你要求解释,那就是:

函数是你的仆人。你告诉他们该做什么,通常希望他们回来给你带来一些东西。你的职能不是特别熟练的,因为他们努力工作,但永远不会回来,也永远不会带来你所要求的东西。为了让它们对您更有用,请为它们配备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()

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

【讨论】:

  • 谢谢你,我现在理解得更好了,一旦我启动并运行它就会发布。
猜你喜欢
  • 2012-08-20
  • 1970-01-01
  • 1970-01-01
  • 2017-11-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多