เมธอด pop()
Array.pop() ลบ Element ตัวสุดท้ายออกจาก Array และ คืนค่า Element ที่ถูกลบ (Mutate Original Array)
Syntax
var removedElement = array.pop();
ตัวอย่างโค้ด
<html>
<head>
<title>JavaScript Array pop Method</title>
</head>
<body>
<script>
var numbers = [40, 70, 80, 100];
var element = numbers.pop();
document.write("element is : " + element);
var element = numbers.pop();
document.write("<br />element is : " + element);
</script>
</body>
</html>
ผลลัพธ์
element is : 100 element is : 80
Array numbers เหลือ [40, 70]
รายละเอียด
- ลบ Element ที่ Index สุดท้าย (
length - 1) - ลด
lengthลง 1 - คืนค่า Element ที่ถูกลบ
- ถ้า Array ว่าง คืนค่า
undefinedและ Length ยังคงเป็น 0
ตัวอย่างการใช้งานจริง: Stack (LIFO)
class Stack {
constructor() {
this.items = [];
}
push(item) {
this.items.push(item);
}
pop() {
return this.items.pop();
}
peek() {
return this.items[this.items.length - 1];
}
isEmpty() {
return this.items.length === 0;
}
}
const stack = new Stack();
stack.push(10);
stack.push(20);
stack.push(30);
console.log(stack.pop()); // 30
console.log(stack.pop()); // 20
วิธีอื่นๆ ที่เกี่ยวข้อง
| Method | ตำแหน่ง | Mutate? | คืนค่า |
|---|---|---|---|
pop() | ท้าย | ใช่ | Element ที่ลบ |
shift() | หน้า | ใช่ | Element ที่ลบ |
slice(-1)[0] | ท้าย | ไม่ | Element (Array ใหม่) |
at(-1) | ท้าย | ไม่ | Element |
สรุป
pop() ใช้ลบและดึง Element ตัวสุดท้าย (Stack Behavior) Mutate Array ต้นฉบับ คืนค่า Element ที่ลบ ถ้าต้องการแค่ดูค่าไม่ให้ลบ ใช้ at(-1) หรือ [length-1]