在我的代码中使用数组发生了一些非常奇怪的事情。我已经制作了一个JS小提琴来演示(你必须打开浏览器控制台才能看到日志)。
我还提供了一个高照度的图像。
我想解释为什么会发生这种情况。
基本上,大小为3的数组仅显示数组中的2个元素。当我在控制台上记录array.length时,它显示为3,但是在打开对象时只有2个元素是可见的,这似乎不适合我。
编辑:我使用控制台日志只是为了显示正在发生的事情。我真正的问题是我无法访问代码中的第3个元素,我需要。
请看JS小提琴&附图。
https://jsfiddle.net/ysf2o39f/
console.log('Init');
var arr = []; // Array of objects
var obj = {}; // Dummy object
// Fill array
arr.push(obj);
arr.push(obj);
arr.push(obj);
// Log
console.log('Before pop: ');
console.log(arr);
console.log('Length: ' + arr.length);
// Pop array
arr.pop();
// Log
console.log('After pop: ');
console.log(arr);
console.log('Length: ' + arr.length);