JavaScript 中将数字拆分为单个数字


在给定的问题陈述中,我们得到一个数字,我们的任务是借助 Javascript 将其拆分为单个数字。因此,我们可以将给定的数字转换为字符串,然后可以使用字符串操作技术来获得所需的结果。

理解问题

在 Javascript 中,在单个数字级别操作数字非常常见。因此,将给定数字拆分为其组成数字是一项常见的任务。并将其提取以供进一步处理或分析。

给定问题的逻辑

要解决此问题,我们将使用两种不同的方法在 Javascript 中将数字拆分为其单个数字。因此,我们将通过两种方式解决此问题。在第一种方法中,我们将数字转换为字符串表示形式,然后使用字符串操作方法分离数字。在第二种方法中,我们将使用数学运算从数字中提取每个数字。

算法 - 第一种方法

步骤 1:声明要转换为数字的数字。

步骤 2:将数字分离成字符串并使用字符串操作方法添加它。

步骤 3:将数字转换为其数字后,我们将控制台输出 digits 变量以显示输出。

示例

//Define the number to split into digits
let number = 54321;
let digits = number.toString().split('');
console.log(digits);

输出

[ '5', '4', '3', '2', '1' ]

算法 - 第二种方法

步骤 1:通过声明要拆分为数字的数字并将其存储在“number”变量中来开始程序。

步骤 2:由于我们希望将拆分的数字存储在数组中,因此创建一个名为“digits”的空数组。

步骤 3:然后进入一个 while 循环,该循环将继续处理数字,直到它达到零。

步骤 4:在循环的每个步骤中,使用模运算符,我们将获得提供的数字的最后一位数字,同时除以 10 来计算余数。

步骤 5:我们将通过将其除以 10 来更新数字。此过程将继续运行,直到数字变为零。

步骤 6:循环结束后,我们将数字存储在 digits 数组中,并按正确的顺序作为单独的项目显示。

示例

//Define the number to split into digits
let num = 987456;
let digits = [];

while (num > 0) {
  digits.unshift(num % 10);
  num = Math.floor(num / 10);
}

console.log(digits);

输出

[ 9, 8, 7, 4, 5 ]

复杂度

第一种方法的时间复杂度取决于将给定数字转换为字符串,第二种方法取决于我们使用模运算和除法来获取数字。因此,这两种方法的复杂度相同,为 O(log 10(num))。在此,num 是我们已找到其数字的数字。

结论

我们已经通过两种方式在 Javascript 中解决了给定的任务。此外,代码需要一些 Javascript 的内置方法,这使得代码变得简单和简短。这两个函数都能以不同的方式有效地找出给定数字的数字。

更新于:2023-08-16

2K+ 次查看

启动您的 职业生涯

通过完成课程获得认证

立即开始
广告