簡體   English   中英

JavaScript-如何在1到用戶輸入的數字之間創建一個數字列表(數字),然后將這些數字相乘?

[英]JavaScript - How to Create a List of Numbers Between 1 and Whatever The User Enters (Num), Then Multiply Those Numbers Together?

我正在嘗試解決此問題:

https://www.coderbyte.com/editor/guest:First%20Factorial:JavaScript

我的想法是創建一個變量list生成1和任何用戶輸入的之間的所有數字num

我怎么說let list = //integers between 1 and (num)

然后將列表中的所有數字相乘?

您可以使用Array.from()Array.prototype.reduce()

const x = readline();

const array = Array.from({length: x}).map((_, i) => i + 1);
/* Now you have [1, 2, 3, ... , n] */

const result = array.reduce((previousItem, currentItem) => previousItem * currentItem);
/* Now you have 1 * 2 * 3 * ... * n */

這就是我最終要做的事情:

HTML:

<html>
<head>
<title>multiply</title>

</head>

<body>
    Enter number : <input id="inputnum" />
    <input type ="button" value="Submit" onclick="multiply();" />
    <div id="outputnew"></div>
</body>
</html>

(JavaScript在<head></head>部分中):

<script>
function multiply() {
    let num = document.getElementById("inputnum").value;
    let sum = 1;

    for (let i=1; i<= num; i++) {
        sum = sum * i;
    }

    document.getElementById("outputnew").innerHTML  = "All of the values between 
    1 and " +num+ " multiplied together equals:" + sum ;

}
</script>

這將創建一個函數multiply() ,其中定義了兩個變量: numsum

num獲得用戶為ID為"inputnum"<input>字段<input>的任何值, sum開始為1。

然后,我們創建一個for-loop ,獲取所有從1到(num)的整數,然后將它們與sum = sum * i;相乘sum = sum * i;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM