zoukankan      html  css  js  c++  java
  • map() 方法

    1. 方法概述

    map() 方法返回一个由原数组中的每个元素调用一个指定方法后的返回值组成的新数组。

    2. 例子

    2.1 在字符串中使用map

    在一个 String 上使用 map 方法获取字符串中每个字符所对应的 ASCII 码组成的数组:

    var map = Array.prototype.map
    var a = map.call("Hello World", function(x) { return x.charCodeAt(0); })
    // 下面的语句返回什么呢:
        ["1", "2", "3"].map(parseInt);
    
    // 你可能觉的会是[1, 2, 3]
    // 但实际的结果是 [1, NaN, NaN]
    
    // 通常使用parseInt时,只需要传递一个参数.但实际上,parseInt可以有两个参数.第二个参数是进制数.可以通过语句"alert(parseInt.length)===2"来验证.
    // map方法在调用callback函数时,会给它传递三个参数:当前正在遍历的元素, 元素索引, 原数组本身.
    // 第三个参数parseInt会忽视, 但第二个参数不会,也就是说,parseInt把传过来的索引值当成进制数来使用.从而返回了NaN.
    
    
     //应该使用如下的用户函数returnInt
    
     function returnInt(element){
     return parseInt(element,10);
     }
    
     ["1", "2", "3"].map(returnInt);// 返回[1,2,3]

    3.map()方法的实现原理

     1 Array.prototype.myMap = function(callback){
     2     var arr = [];
     3     for(var i = 0; i < this.length; i++){
     4         var value = callback(this[i],i,this);
     5         if(value == null){
     6             continue;
     7         }
     8         arr.push(value);
     9     }
    10     return arr;
    11 }
    12 
    13 var items = [1,2,3,4];
    14 
    15 var arr = items.myMap(function(item,i){
    16     return item*10;
    17 });
  • 相关阅读:
    js实现无限极分类
    js做通讯录的索引滑动显示效果和滑动显示锚点效果
    jquery 图片轮播demo实现
    纯JS实现可拖拽表单
    免费的字体图标网站
    ubuntu14.04安装MATLAB R2014a
    UBUNTU 14.04 + CUDA 7.5 + CAFFE
    朴素贝叶斯方法(Naive Bayes Method)
    随机森林分类(Random Forest Classification)
    特征选择和特征提取
  • 原文地址:https://www.cnblogs.com/guangyan/p/6684793.html
Copyright © 2011-2022 走看看