这里使用的扩展语法如何将数字转换为字符串数组?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了这里使用的扩展语法如何将数字转换为字符串数组?相关的知识,希望对你有一定的参考价值。

我试图解决其中一个编码网站的挑战,我在这个挑战的最佳解决方案中看到了这一点。

有人可以详细说明为什么这段代码:[...a%10+''+a]

返回以下数组:["2", "1", "1", "2", "2"]

幕后实际发生了什么?

附:我知道这可能不是最好的做法,但我仍在学习,这似乎很有趣。

答案

假设a的原始值是1122

  1. a%10返回a的最后一位数,即2
  2. +''将数字转换为字符串"2"
  3. +a连接a的全部价值,导致"21122"
  4. 把它放在[...]中将字符串扩展成一个字符数组。

以下是代码的所有步骤:

const a = 1122;
const lastDigit = a % 10;
const lastDigitStr = lastDigit + '';
const newStr = lastDigitStr + a;
const result = [...newStr];
console.dir(result);

以上是关于这里使用的扩展语法如何将数字转换为字符串数组?的主要内容,如果未能解决你的问题,请参考以下文章

为啥扩展语法会将我的字符串转换为数组?

如何将数组中的数字字符串转换为数字?

js中如何把一串数字转换为数组

在 Java 中,如何将字节数组转换为十六进制数字字符串,同时保持前导零? [复制]

在 Java 中,如何将字节数组转换为十六进制数字字符串,同时保持前导零? [复制]

如何将字符串数字的单元格数组转换为数值向量[重复]