在 JavaScript 中查找数字各位的乘积
我们需要编写一个 JavaScript 程序,该程序接收一个数字并找到其所有数字的乘积。
输入输出场景
假设有一个数字分配给一个变量,任务是找到该数字的乘积。
Input = 12345; Output = 120
让我们看看另一个场景,我们将字符串数字转换为整数值并将其相乘。
Input = "12345"; Output = 120
Math.floor()
Math.floor() 函数在 JavaScript 中返回小于等于给定数字的最大整数。简单来说,此方法将数字向下舍入到最接近的整数。以下是Math.floor() 方法的语法:
Math.floor(x)
为了更好地理解,请考虑以下代码片段,在这里我们为该方法提供各种输入值。
Math.floor(10.95); // 10 Math.floor(10.05); // 10 Math.floor(10) // 10 Math.floor(-10.05); // -10 Math.floor(-10.95); // -1
示例 1
数字各位的乘积
在下面的示例中,我们有一个变量num保存 12345,我们创建了另一个变量 product 来存储数字的乘积(最初设置为 1)。
当num不为 0 时,num 将除以 10,结果存储在product中。这里使用 Math.floor() 来消除最后一位数字。
<!DOCTYPE html> <html> <title>Product of number digits</title> <head> <p id = "para"></p> <script> var num = 12345; var product = 1; function func(){ while (num != 0) { product = product * (num % 10); num = Math.floor(num / 10); } document.getElementById("para").innerHTML = "The productduct of number digits is: " + product; }; func(); </script> </head> </html>
parseInt()
parseInt() 函数将解析字符串参数并返回一个整数值。
语法
以下是语法:
parseInt(string)
为了更好地理解,请考虑以下代码片段,在这里我们为该方法提供各种输入值。
parseInt("20") // 20 parseInt("20.00") // 20 parseInt("20.23") // 20
示例
将字符串数字转换为整数
在下面的示例中,我们定义了一个字符串,其中包含一个整数值12345。使用 for 循环,我们遍历字符串的每个字符,使用parseInt()方法将其转换为整数值,并将结果值乘以一个变量(product:初始化为 1)。
<!DOCTYPE html> <html> <head> <title>Product of Number digits</title> <button onClick = "func()">Click me! </button> <p id = "para"> </p> <script> function func(){ let string = "12345"; let product = 1; let n = string.length; for (let x = 0; x < n; x++){ product = product * (parseInt(string[x])); } document.getElementById("para").innerHTML = product; }; </script> </head> </html>
示例
使用构造函数
在此示例中,我们创建了一个类的构造函数,并在构造函数内部,我们使用this关键字来调用立即对象,稍后我们将使用prompt()函数从用户那里获取输入。创建另一个变量pro来存储数字的乘积。最初将其设置为 1。当变量num的值不为 0 时,它将除以 10,结果存储在变量pro中。在这里,我们使用Math.floor()方法来消除最后一位数字。
<!DOCTYPE html> <html> <head> <title>Product of digits</title> </head> <body> <script> class Sum { constructor() { this.pro = 1; this.n = prompt("Enter a number:"); while (this.n != 0) { this.pro = this.pro * (this.n % 10); this.n = Math.floor(this.n / 10); } } } const res = new Sum(); document.write("Sum of Digit is = " + res.pro); </script> </body> </html>
广告