在javascript中对数组中的每个数字进行平方

dag*_*rre 2 javascript

我试图将数组中的每个数字对齐并且我的原始代码不起作用.我查找了另一种方法,但我想知道为什么原始代码不起作用.

原始代码:

function(arr) {

    ret= [];            

    for (var i = 0, len = arr.length; i < len; i++) {
        root = Math.sqrt(arr[i]);
        ret.push(root);
    }

    return ret;
}
Run Code Online (Sandbox Code Playgroud)

工作守则:

function(arr) {

    ret= [];

    for (var i = 0, len = arr.length; i < len; i++) {
        ret.push(arr[i] * arr[i]);
    }

    return ret;     
}
Run Code Online (Sandbox Code Playgroud)

Moh*_*sen 17

Math.sqrt给你平方根而不是数字的平方.Math.pow与第二个参数一起使用2.


1ac*_*ace 14

那个怎么样 ?

function (arr) {
  return arr.map(function (x) {
    return Math.pow(x, 2);
  });
}
Run Code Online (Sandbox Code Playgroud)

Array.map(func)将函数应用于地图的每个元素,并返回由新值组成的数组. Math.pow(base, exp)提升base自己的exp力量.