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 的内置方法,这使得代码变得简单和简短。这两个函数都能以不同的方式有效地找出给定数字的数字。