zoukankan      html  css  js  c++  java
  • Array.apply(null, { length: 20 })的用法

    今天在看vue.js的render函数时,发现了下面代码

    Array.apply(null, { length: 20 }).map(function () {
       return createElement('p', 'hi')
    })

    有两个疑问:1.apply的第二个参数不是必须是数组么?   2.为什么用apply,直接 Array(20) 也能创建一个长度为20的数组啊?

    解答1:apply的第二个参数可以穿进去一个带length属性的对象也可以,因为检测的是length属性。

    解答2:Array(20)创建出的数组虽然长度是20,但是创建出来的数组都没有初始化,你console看一下。而Array.apply(null,{length:20}) 创建出来的数组不仅长度是20,并且每一项都是undefined,已经初始化过了。

  • 相关阅读:
    前端基础之BOM和DOM
    前端基础之JavaScript
    前端基础之CSS
    Black And White HDU
    Robot Motion HDU
    A Knight's Journey POJ
    Find a way HDU
    排序 HDU
    Dungeon Master POJ
    Network Saboteur POJ
  • 原文地址:https://www.cnblogs.com/chenguangliang/p/12504788.html
Copyright © 2011-2022 走看看