zoukankan      html  css  js  c++  java
  • map方法到底会不会改变原始数组?

    有时候map方法会改变原数组,但我之前明明记得map方法是不会改变原数组,但是我在实际项目中发现map是会改变原数组的。amazing,那么让我们一探究竟。

    Array.prototype.map()

    map() 方法创建一个新数组,其结果是该数组中的每个元素是调用一次提供的函数后的返回值。

    var new_array = arr.map(function callback(currentValue[, index[, array]]) {
     // Return element for new_array 
    }[, thisArg])

    MDN上清清楚楚说 map不修改调用它的原数组本身(当然可以在 callback 执行时改变原数组) 

    因此假设 数组是值类型的,则不会改变原数组,

    假设数组是引用类型的数组,如果改变数组选项中的引用类型的值则原数组会发生改变,因为对于数组选项来说本身地址是没有发生改变,但是对于是值发生了改变,故而会出现有时候用map你发现不会改变原数组,有时候用map会改变原数组

  • 相关阅读:
    jQuery之Ajax应用
    ELK安装配置简单使用
    saltstack其他运行模式
    saltstack syndic安装配置使用
    salt api
    saltstack api安装使用
    saltstack master minion安装配置简单使用
    zabbix api
    zabbix snmp、jmx配置使用
    phoenix安装
  • 原文地址:https://www.cnblogs.com/Ewarm/p/13306145.html
Copyright © 2011-2022 走看看