zoukankan      html  css  js  c++  java
  • JavaScript中的map方法

      假设有一个函数f(x)=x²;作用在一个数组[1,2,3,4,5,6,7,8,9],通常我们会用遍历的方法来实现。  

    function f(x){
      return x * x;   
    }
    
    var arr = [1,2,3,4,5,6,7,8,9];
    var result = [];
    for(var i=0; i<arr.length; i++){
      result.push(f(arr[i]))   
    }

      这样的确可以实现,但我们有更优雅的实现。

    function f(x) {
        return x * x;
    }
    
    var arr = [1, 2, 3, 4, 5, 6, 7, 8, 9];
    arr.map(f); // [1, 4, 9, 16, 25, 36, 49, 64, 81]

      map()方法定义在JavaScript的Array中,我们调用Array的map()方法,传入我们自己的函数,就得到一个新的Array作为结果。map传入的参数时f,即函数本身。

      所以,map()作为高阶函数,事实上它把运算规则抽象了。因此我们不光可以用来计算简单的f(x)=x²,还可以计算任意复杂度的函数,比如将数组的所有数字转化为字符串:

    var arr = [1, 2, 3, 4, 5, 6, 7, 8, 9];
    arr.map(String); // ['1', '2', '3', '4', '5', '6', '7', '8', '9']
  • 相关阅读:
    大整数乘法
    Independent Components Analysis:独立成分分析
    因子分析(Factor analysis)
    EM算法原理详解
    简易解说拉格朗日对偶(Lagrange duality)
    机器学习中有关概率论知识的小结
    高斯混合和EM算法
    java
    java
    java
  • 原文地址:https://www.cnblogs.com/weilan/p/7109890.html
Copyright © 2011-2022 走看看