Array.map doesn't seem to work on uninitialized arrays

后端 未结 8 1971
忘了有多久
忘了有多久 2020-12-03 10:35

I\'m trying to set default values on an uninitialized array using the map function but it doesn\'t seem to work, any ideas on how to set default values?

Consider thi

8条回答
  •  刺人心
    刺人心 (楼主)
    2020-12-03 11:15

    You can populate an array with zeros using this function:

    function fillArrayWithNumber(n) {
      var arr = Array.apply(null, Array(n));
      return arr.map(function (x, i) { return 0; });
    }
    
    fillArrayWithNumber(5); // [0,0,0,0,0]
    

    Or with a small change you can use indexes instead:

    function fillArrayWithIndex(n) {
      var arr = Array.apply(null, Array(n));
      return arr.map(function (x, i) { return i; });
    }
    
    fillArrayWithIndex(5); // [0,1,2,3,4]
    

    Fiddle

提交回复
热议问题