为什么”——数组.删除数组的最后一个元素

Why `--array.length` delete the last element of the array?

本文关键字:数组 最后一个 元素 删除 为什么      更新时间:2023-09-26

在javascript中,chrome控制台:

var test = [0, 1, 2, 3, 4]
> undefined
var lastIdx = --test.length
> undefined
lastIdx
> 4
test
> [0, 1, 2, 3]
var lastIdx = --(test.length)
> undefined
lastIdx
> 3
test
> [0, 1, 2]

正如你已经看到的,我只是想通过--array.length获得数组的最后一个索引,但不幸的是,数组的最后一个元素意外地被删除了,真的无法理解为什么会发生这种情况,有人能解释吗?

--x减去x并返回新值。(x--减少x并返回旧值。)因此,--test.length将长度减少1。

如果你只想得到最后一个索引而不修改长度,那就是test.length - 1