为什么我的join()方法不起作用?

时间:2017-04-07 01:27:13

标签: javascript

我想编写一个接收多位数字的函数,并返回一个包含每个数字平方结果的数字。

我可以使用map方法将数字成功转换为字符串并对每个数字进行平方,但是当我尝试将数组连接回单个数字时,它就会失败。

这是我的代码:

function squareDigits(num){
  let numArray = num.toString().split("").map(Number);
  return numArray.map(function(number){
    return Math.pow(number, 2).join('');
  });
}
squareDigits(52);

2 个答案:

答案 0 :(得分:2)

试试这个。你的.join()错位

function squareDigits(num){
  let numArray = num.toString().split("").map(Number);
  return numArray.map(function(number){
    return Math.pow(number, 2)
  }).join('');
}

答案 1 :(得分:0)

Math.pow会返回Number,而不是数组,但Array.prototype.map会返回。 join是一种Array.prototype方法。