函数封装数组中元素的二次方

148 阅读1分钟

随机输入一个数组

var arr = [4,5,6,7,9]

输出的结果

[16,25,36,49,81]

利用for循环

// 方式一:
function square(arr){
   var newArr = [];
   for(var i = 0;i < arr.length; i++){
      newArr.push(arr[i]*arr[i]);
   }
   return newArr;
}
// 方式二
function square(arr){
   var newArr = [];
   for(var i = 0;i < arr.length; i++){
      newArr[i] = Math.pow(arr[i],2);
   }
   return newArr;
}
// 方式三
function square(arr){
   var newArr = arr.slice(0);
   for(var i = 0;i < newArr.length; i++){
      newArr[i] = newArr[i] * newArr[i];
   }
   return newArr;
}

for...in...

// 方式四
function square(arr){
   var newArr = arr.slice(0);
   for(x in newArr){
      newArr[x] *= newArr[x];
   }
   return newArr;
}

利用map 创建一个新数组

// 方式一
function square(arr){
   return arr.map(function(item){
      return item * item;
   });
}

利用箭头函数

// 方式二
function square(arr){
   return arr.map(e => e * e);
}
// 方式三
function square(arr){
   var newArr = arr.slice(0);
   return newArr.map(function(item){
      return Math.pow(item,2);
   });
}

利用箭头函数

// 方式四
function square(arr){
   return arr.map(e => Math.pow(e,2));
}

forEach遍历 数组

// 方式一
function square(arr){
   var newArr = arr;
   newArr.forEach(function(item,index,array){
      array[index] = item * item;
   });
   return newArr;
}
function square(arr){
   var newArr = [];
   arr.forEach(function(e){
      newArr.push(e * e);
   });
   return newArr;
}