推荐直接用方括号[]创建数组,因其最安全、简洁且语义清晰;优先选用字面量语法,避免array构造函数单参数时创建稀疏数组的歧义问题,并支持嵌套、混合类型及现代语法特性。

推荐直接用方括号 [] 创建数组,这是最安全、简洁且语义清晰的方式。
优先选用字面量语法
数组字面量写法直观、性能好,且避免了 Array 构造函数的歧义问题:
-
✅ 推荐写法:
const list = [1, 2, 3];、const empty = []; -
❌ 避免写法:
const list = new Array(1, 2, 3);—— 看似等价,但new Array(5)会创建长度为 5 的稀疏数组(不含任何元素),而非[undefined, undefined, undefined, undefined, undefined]
注意单参数时的行为差异
当 Array 构造函数只传一个数字参数时,它不会初始化元素,而是设置数组长度:
-
Array(3)→[ , , ](稀疏数组,length === 3,但无实际索引项) - 若需要含
undefined的密集数组,改用Array.from({ length: 3 })或Array(3).fill()
嵌套与混合类型也适用字面量
二维数组、含对象或函数的数组,同样应使用字面量保持可读性:
const matrix = [[1, 2], [3, 4]];const users = [{ id: 1, name: 'Alice' }, { id: 2, name: 'Bob' }];const handlers = [() => console.log('a'), () => console.log('b')];
配合现代语法提升表达力
字面量可自然结合展开运算符、解构、计算属性等特性:
- 合并数组:
const all = [...arr1, ...arr2]; - 条件插入:
const items = ['a', ...(flag ? ['b'] : []), 'c']; - 解构赋值:
const [first, , third] = [1, 2, 3];
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南











