• JS基本功 | JavaScript专题之数组 方法总结


    • Array.map()

     1、   map() 遍历数组

    语法:

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

    描述:

    map 方法会给原数组中的每个元素都按顺序调用一次  callback 函数。callback 每次执行后的返回值(包括 undefined)组合起来形成一个新数组。 callback 函数只会在有值的索引上被调用;那些从来没被赋过值或者使用 delete 删除的索引则不会被调用。

    callback 函数会被自动传入三个参数:数组元素,元素索引,原数组本身。

    如果 thisArg 参数有值,则每次 callback 函数被调用的时候,this 都会指向 thisArg参数上的这个对象。如果省略了 thisArg 参数,或者赋值为 null 或 undefined,则 this 指向全局对象 。

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

    使用 map 方法处理数组时,数组元素的范围是在 callback 方法第一次调用之前就已经确定了。在 map 方法执行的过程中:原数组中新增加的元素将不会被 callback 访问到;若已经存在的元素被改变或删除了,则它们的传递到 callback 的值是 map 方法遍历到它们的那一时刻的值;而被删除的元素将不会被访问到。

     示例:

    白话理解:

    map不会直接改变数组,但是在callback函数中可以有改变原数组的操作,如增加某属性item["newkey"] = '123'、 删除某个index的项等;

    在小程序中,需要this.setData({datas: newData}) 改变page的中data的变量,从而改变页面的渲染,所以常用var newData = data.map(() => { .....  return item})

  • 相关阅读:
    Oracle 连接字符串
    C# Entity Framework Core 各个数据库连接Context
    jquery的几个语法总结和注意事项
    Jquery的load()
    针对PHP性能方面编程技巧的总结
    编码,charset,乱码,unicode,utf-8与net简单释义
    Web测试方法
    MySQL部署时Table 'mysql.plugin' doesn't exist的解决
    IE Firefox css 差别
    Mysql日期和时间函数
  • 原文地址:https://www.cnblogs.com/wuhaoquan/p/8780524.html
Copyright © 2020-2023  润新知