javascript - JavaScript 数组中的省略索引
问题描述
undefined
JavaScript数组中的元素有什么区别:
- 直接创建,
- 用省略创建?
案例 1. 和 2. 的元素都有undefined
类型和值,但在省略号中出生的元素没有索引(或任何可枚举的属性,它们的数组有一个Array.length
明确的正确性)。你能介绍一下这方面的背景吗?
例子:
// case 1.
const undefineds = [undefined, undefined, undefined].map((el, i) => i)
console.log(undefineds, undefineds.length, 'undefineds')
// case 2.
const empties = [,,,].map((el, i) => i)
console.log(empties, empties.length, 'empties')
输出:
Array [0, 1, 2] 3 "undefineds"
Array [undefined, undefined, undefined] 3 "empties"
注意:在案例 2 中。我知道不仅索引i
未定义,而且迭代返回的任何内容,例如:[,,,].map((el, i) => 'puppies')
=> [undefined, undefined, undefined]
。
解决方案
推荐阅读
- c# - C#等待操作符的理解
- ruby - 为什么从红宝石中的浮点数(以毫秒精度)转换为时间会导致红宝石中的精度损失不一致?
- javascript - 如何在成功响应不为空之前调用相同的ajax
- ios - 调整视图的大小使其他视图在 UITableViewCell 中反弹
- json - 如何使用 Codable 在 Swift 中使用动态文件名解析 JSON
- android - 支持的最低 Android 版本 Cordova 9
- version - 在哪里找到 Azure DevOps Server 的数字版本号(安装前)?
- python - 在 gitlab ci 管道中,如何使用 python 连接到 redis 服务?
- r - 我怎样才能用尽函数的所有参数组合并将它们的结果收集在一个整洁的表中?
- javascript - 在不重新加载页面的情况下刷新 div 中的 php 函数?