--- title: Array.prototype.pop() slug: Web/JavaScript/Reference/Global_Objects/Array/pop tags: - Array - JavaScript - Method - Prototype - Reference translation_of: Web/JavaScript/Reference/Global_Objects/Array/pop --- <div>{{JSRef}}</div> <p><code><strong>pop()</strong></code> 方法會移除並回傳陣列的<strong>最後一個</strong>元素。此方法會改變陣列的長度。</p> <div>{{EmbedInteractiveExample("pages/js/array-pop.html")}}</div> <h2 id="語法">語法</h2> <pre class="syntaxbox"><var>arr</var>.pop()</pre> <h3 id="回傳值">回傳值</h3> <p>自陣列中移除的元素;若陣列為空,則為 {{jsxref("undefined")}}。</p> <h2 id="描述">描述</h2> <p><code>pop</code> 方法會移除陣列中的最後一個元素,並將該值回傳給呼叫者。</p> <p><code>pop</code> 方法被刻意設計為具通用性;此方法可以藉由 {{jsxref("Function.call", "called", "", 1)}} 或 {{jsxref("Function.apply", "applied", "", 1)}} 應用於類似陣列的物件上。若欲應用此方法的物件不包含代表一系列啟始為零之數字屬性序列長度的 <code>length</code> 屬性,可能是不具任何意義的行為。</p> <p>如果於空陣列呼叫 <code>pop()</code>,將會回傳 {{jsxref("undefined")}}。</p> <h2 id="範例">範例</h2> <h3 id="移除陣列的最後一個元素">移除陣列的最後一個元素</h3> <p>下面的程式碼為一個包含四個元素的 <code>myFish</code> 陣列,接著移除此陣列的最後一個元素。</p> <pre class="brush: js">var myFish = ['angel', 'clown', 'mandarin', 'sturgeon']; var popped = myFish.pop(); console.log(myFish); // ['angel', 'clown', 'mandarin' ] console.log(popped); // 'sturgeon'</pre> <h2 id="規範">規範</h2> <table class="standard-table"> <tbody> <tr> <th scope="col">Specification</th> <th scope="col">Status</th> <th scope="col">Comment</th> </tr> <tr> <td>{{SpecName('ES3')}}</td> <td>{{Spec2('ES3')}}</td> <td>Initial definition. Implemented in JavaScript 1.2.</td> </tr> <tr> <td>{{SpecName('ES5.1', '#sec-15.4.4.6', 'Array.prototype.pop')}}</td> <td>{{Spec2('ES5.1')}}</td> <td> </td> </tr> <tr> <td>{{SpecName('ES6', '#sec-array.prototype.pop', 'Array.prototype.pop')}}</td> <td>{{Spec2('ES6')}}</td> <td> </td> </tr> <tr> <td>{{SpecName('ESDraft', '#sec-array.prototype.pop', 'Array.prototype.pop')}}</td> <td>{{Spec2('ESDraft')}}</td> <td> </td> </tr> </tbody> </table> <h2 id="瀏覽器相容性">瀏覽器相容性</h2> <div> <p>{{Compat("javascript.builtins.Array.pop")}}</p> </div> <h2 id="參見">參見</h2> <ul> <li>{{jsxref("Array.prototype.push()")}}</li> <li>{{jsxref("Array.prototype.shift()")}}</li> <li>{{jsxref("Array.prototype.unshift()")}}</li> <li>{{jsxref("Array.prototype.concat()")}}</li> <li>{{jsxref("Array.prototype.splice()")}}</li> </ul>