牛客JavaScript算法题-为数组 arr 中的每个元素求二次方。不要直接修改数组 arr,结果返回新的数组

题目描述:
为数组 arr 中的每个元素求二次方。不要直接修改数组 arr,结果返回新的数组

解决方法
1. 遍历数组直接赋值
function square(arr) {
    
    
    var arr_new = [];
    for(var i = 0;i < arr.length;i++){
    
    
        arr_new[i] = arr[i]*arr[i];
    }
    return arr_new;		//1,4,9,16
}
var arr = [1, 2, 3, 4];
document.write(square(arr));
2. map()
  • map() 方法返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值。
  • map() 方法按照原始数组元素顺序依次处理元素。
  • 注意: map() 不会对空数组进行检测。
  • 注意: map() 不会改变原始数组。
function square(arr) {
    
    
	//return arr.map(item => item*item);	//使用箭头函数
    return arr.map(function(item){
    
    
        return item*item;
    })
}
var arr = [1, 2, 3, 4];
document.write(square(arr));

猜你喜欢

转载自blog.csdn.net/weixin_45663697/article/details/110522066