[英]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()
,其中定義了兩個變量: num
和sum
。
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.