繁体   English   中英

关于Javascript中的pop()和push()

[英]About pop() and push() in Javascript

我真的是Javascript的初学者,并且尽可能多地尝试我所阅读的内容。

但是当遇到pop()push() ,我得到了一些我想知道的奇怪结果。

这是代码:

var arr = [];
arr.push(2,3);
console.log(arr);

console.log(arr.pop());
console.log(arr);

结果是:

[2,undefined×1]

3

[2]

不应该是:

[2,3]

3

[2]

这是由于console.log对浏览器的异步评估。 到第一个console.log的结果显示时,由于pop() ,该项已经消失。

要获得准确的结果,请调用toString()

var arr = [];
arr.push(2,3);
console.log(arr.toString()); // 2,3 - as expected.

console.log(arr.pop());
console.log(arr);

您必须注意控制台将对象处理为“实时”。 您在控制台上输出的任何对象(数组,对象等)仍然需要操作。

这就是为什么当您在第一个日志中预期[2,3]时,代码已经弹出3,因此在3的位置上替换为undefined

当然,此事件取决于浏览器如何实现其控制台。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM