如何在 JavaScript 中将数字转换为数组?

如何在 JavaScript 中将数字转换为数组?

在 JavaScript 中,有许多内置方法可以将数字转换为数组。最简单的一种是 split() 方法。我们还可以使用 map()、reduce() 或 form() 方法来执行任务。本文讨论了一些最流行的将数字转换为数组的方法,并提供了何时以及如何应用每种技术的示例。

现在的问题是,为什么需要将数字转换为数组?那么原因可能是将电话号码拆分为单独的数字或将日期分解为其组成部分(解析日期),或者在对单独的数字执行数学运算时它可能很有用。

方法一:通过split()方法

现在,我们来看看 split() 方法。它是一个有用的工具,可将字符串分解为较小的子字符串并将其转换为数字。然后,它甚至可以通过将数字转换为字符串并将其拆分为单独的数字来将数字转换为数组。让我们通过实现 split() 函数来看看,如示例所示。

示例

在此示例中,我们使用函数 toString() 将整数转换为字符串。然后使用 split() 函数将字符串分成单个字符的数组。最终输出将是一个字符串数组,每个字符串代表原始数字的一位数字。

<html>
<body>
   <p id="print"></p>
   <script>
      let number = 12345;
      let numberArray = number.toString().split("");
      document.getElementById("print").innerHTML = numberArray;
   </script>
</body>
</html>

方法2:使用map()方法

通过使用map()方法,可以创建一个新数组,其中包含对调用数组中的每个元素执行给定函数的输出。通过使用map()方法创建数字数组,它也可以用于将数字转换为数组。下面是如何使用 map() 方法将整数转换为数组的说明 -

示例

在此示例中,我们首先使用函数 toString() { [native code] }() 方法将整数转换为字符串。然后使用 Array.from() 函数将该字符串转换为数组。最后,我们使用map()方法将字符串数组转换为整数数组

<html>
<body>
   <p id="print"></p>
   <script>
      let number = 12345;
      let numberArray = Array.from(number.toString(), Number).map(Number);
      document.getElementById("print").innerHTML =numberArray;
   </script>
</body>
</html> 

方法3:使用For循环

此方法是最简单的一种,它使用 for 循环来迭代数字并将其转换为数字数组。

示例

在这个示例中,我们首先使用 toString() 方法将数字转换为字符串。然后我们使用 for 循环迭代数字,并使用 parseInt 方法转换各个数字并将其推入数组。

<html>
<body>
   <p id="print"></p>
   <script>
      let number = 12345;
      let numberArray = [];
      for (let i = 0; i < number.toString().length; i++) {
         numberArray.push(parseInt(number.toString()[i]));
      }
      document.getElementById("print").innerHTML = numberArray;
   </script>
</body>
</html>

方法4:使用reduce()方法

reduce() 方法是一种数组方法,可用于将数组缩减为单个值。在这个例子中,我们将使用reduce()方法将数字转换为数字数组

示例

在此示例中,我们首先使用`toString()` 方法。然后我们使用 split() 方法将字符串拆分为单个字符的数组。最后,我们使用“reduce()”方法迭代字符数组,将每个字符解析为整数并将其添加到最终数组,即本例中的累加器。

<html>
<body>
   <p id="print"></p>
   <script>
      let number = 12345;
      let numberArray = number.toString().split('').reduce((acc, curr) => {
         return [...acc, parseInt(curr)];
      }, []);
      document.getElementById("print").innerHTML=numberArray ;
   </script>
</body>
</html>

方法5:使用Array.from()方法

现在,我们将学习另一种将数字转换或更改为数组的方法。所以,这里我们将使用 Array.from method()。 Array.from 的作用是从可迭代或类似数组的对象生成一个新数组。在本例中,我们可以使用 Array.from() 方法将数字的字符串表示形式转换为单个数字的数组。

示例

现在,让我们看看上述方法的代码。

<html>
<body>
   <p>Original number: 12345</p>
   <p id="result"></p> 
   <script>
      const num = 12345;
      const arr = Array.from(num.toString(), Number);
      document.getElementById("result").innerHTML = arr.join(", ");
   </script>
</body>
</html>

结论

在 JavaScript 中,有多种将数字转换为数组的方法,每种方法都有优缺点。 Split()'方法是最简单的,而map()'、'for'和reduce()'方法功能更强、适应性更强,但需要更多专业知识。您可以根据项目的特定要求选择最能满足您需求的方法。

以上就是如何在 JavaScript 中将数字转换为数组?的详细内容,更多请关注编程之家其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


kindeditor4.x代码高亮功能默认使用的是prettify插件,prettify是Google提供的一款源代码语法高亮着色器,它提供一种简单的形式来着色HTML页面上的程序代码,实现方式如下: 首先在编辑器里面插入javascript代码: 确定后会在编辑器插入这样的代码: <pre
这一篇我将介绍如何让kindeditor4.x整合SyntaxHighlighter代码高亮,因为SyntaxHighlighter的应用非常广泛,所以将kindeditor默认的prettify替换为SyntaxHighlighter代码高亮插件 上一篇“让kindeditor显示高亮代码”中已经
js如何实现弹出form提交表单?(图文+视频)
js怎么获取复选框选中的值
js如何实现倒计时跳转页面
如何用js控制图片放大缩小
JS怎么获取当前时间戳
JS如何判断对象是否为数组
JS怎么获取图片当前宽高
JS对象如何转为json格式字符串
JS怎么获取图片原始宽高
怎么在click事件中调用多个js函数
js如何往数组中添加新元素
js如何拆分字符串
JS怎么对数组内元素进行求和
JS如何判断屏幕大小
js怎么解析json数据
js如何实时获取浏览器窗口大小
原生JS实现别踩白块小游戏(五)
原生JS实现别踩白块小游戏(一)