Advertisement

ES6高阶函数测试:是否修改原始数组?是否有返回值等?

阅读量:

【高阶函数测试:

是否会对原始数组产生修改,以及是否具备返回值。

一、forEach(循环遍历):

测试一:原数组是否发生变更,以及该操作是否具有返回值?

复制代码
 /**直接数组**/

    
 let arr=[1,2,3,4,5,6,7,8,9,10];
    
 let newArr=arr.forEach(item=>{
    
     if(item%2==0){
    
     item=5;
    
     return item;
    
     }
    
 });
    
 console.log("原数组,新数组:");
    
 console.log(arr,newArr);   
    
    
    
    

通过观察可知,原始数组未发生任何变化,同时该操作也未产生返回值。然而,当数组中的每个元素为对象时,对对象内部属性的调整将导致原数组内容的相应改变,此现象在测试二中得以验证。

测试二:当对数组中对象的属性进行修改时,是否会影响原始数组?

复制代码
 /**数

全部评论 (0)

还没有任何评论哟~