-.- -.-
首页
  • 分类
  • 标签
  • 归档
  • Lodash 源码分析 (opens new window)
Mozilla (opens new window)
GitHub (opens new window)

江月何年初照人

首页
  • 分类
  • 标签
  • 归档
  • Lodash 源码分析 (opens new window)
Mozilla (opens new window)
GitHub (opens new window)
  • 算法

  • JS相关内容

    • 从深拷贝看JS中的循环引用
    • 0.1+0.2 为什么不等于 0.3
    • JS中的位运算
    • 稀疏数组与稠密数组
      • this到底指向谁
      • JS中的比较规范
      • 连续赋值
      • 跨域及解决方案
      • 节流和防抖
      • 从输入 URL 到页面展示,这中间发生了什么?
    • 基础

    • js
    • JS相关内容
    江月何年初照人
    2021-03-23

    稀疏数组与稠密数组

    # 稀疏数组 与 稠密数组

    稀疏数组

    也就是数组的长度和数组的个数不匹配,在 JS 中进行遍历时,并不会遍历对应的元素

    var a = new Array(3);
    // a 在遍历时,并不会打印任何值,此时为稀疏数组
    a.forEach(function (x, i) { console.log(i+". "+x) }) 
    
    var b = new Array(3).fill(undefined)
    b.forEach(function (x, i) { console.log(i+". "+x) }) // 0. undefined ; 1. undefined; 2. undefined;
    
    1
    2
    3
    4
    5
    6

    区别在于遍历时,稀疏数组会跳过不存在的元素,但是稠密数组可以打印出来,虽然都为 undefined

    # 快速创建自增数组

    [...Array(1000).keys()] // [0,1,2,3,4,...,999]
    
    1

    JavaScript: sparse arrays vs. dense arrays (opens new window)

    编辑 (opens new window)
    #JS#Array
    上次更新: 2021/03/23 14:59:38
    JS中的位运算
    this到底指向谁

    ← JS中的位运算 this到底指向谁→

    最近更新
    01
    a标签下载限制
    08-08
    02
    必应每日一图
    05-27
    03
    小球碰壁反弹动画
    05-26
    更多文章>
    Theme by Vdoing | Copyright © 2021-2023 Himawari | MIT License
    • 跟随系统
    • 浅色模式
    • 深色模式
    • 阅读模式