Array.pop() 移除末尾元素
最后更新:2026-09-09
Array.pop() 移除末尾元素
pop 移除数组的最后一个元素并返回它;数组为空时返回 undefined 且不报错。与 push 组成栈(后进先出)操作。
| 分类 | 数组 |
|---|---|
| ES 版本 | ES1(1997) |
📝 语法
const 被移除的元素 = 数组.pop();
返回值:被移除的元素;空数组返回 undefined。
是否修改原值:是(原地修改)
▶ 示例
编辑下方代码,点击运行,在输出面板查看结果:
运行结果:
任务3
2
undefined
💡 提示 pop + push 实现栈(LIFO);shift + unshift 实现队列(FIFO)。
ℹ️ info pop/shift/push/unshift 四个方法都会原地修改数组并返回被操作的元素(push/unshift 返回新长度)。
🌐 浏览器支持
| 浏览器 | |||||
|---|---|---|---|---|---|
| Array.pop() | ✓ v1 | ✓ v12 | ✓ v1.5 | ✓ v3 | ✓ v10.5 |
| 所有现代浏览器均支持 | |||||
🏷️ 相关数组方法
💡 相关案例
更多实战案例即将上线,敬请期待。
📚 相关教程
❓ 常见问题
Qpop 和 shift 的区别?
Apop 移除末尾(快,O(1));shift 移除开头(要把后面元素全部前移,O(n))。大数据量频繁 shift 考虑用别的结构。
Qpop 会返回被移除的元素吗?
A会,返回被移除的那个元素本身。空数组返回 undefined,不会抛错。
Q想删除指定位置的元素怎么办?
A用 splice(下标, 1)。pop 只能删末尾,shift 只能删开头。