--- title: Array.prototype.unshift() slug: Web/JavaScript/Reference/Global_Objects/Array/unshift tags: - Array - JavaScript - Method - Prototype - Reference translation_of: Web/JavaScript/Reference/Global_Objects/Array/unshift --- <div>{{JSRef}}</div> <p><code><strong>unshift()</strong></code> 메서드는 새로운 요소를 배열의 맨 앞쪽에 추가하고, 새로운 길이를 반환합니다.</p> <p>{{EmbedInteractiveExample("pages/js/array-unshift.html")}}</p> <h2 id="구문">구문</h2> <pre class="syntaxbox"><code><var>arr</var>.unshift([...elementN])</code></pre> <h3 id="매개변수">매개변수</h3> <dl> <dt><code>element<em>N</em></code></dt> <dd>배열 맨 앞에 추가할 요소.</dd> </dl> <h3 id="반환_값">반환 값</h3> <p>메서드를 호출한 배열의 새로운 {{jsxref("Array.length", "length")}} 속성.</p> <h2 id="설명">설명</h2> <p><code>unshift</code> 메서드는 배열 형태의 객체 시작점에 주어진 값을 삽입합니다.</p> <p><code>unshift</code>는 제네릭하도록 설계되었으며, 배열 형태를 가진 객체가 {{jsxref("Function.call", "호출", "", 1)}}하거나 객체에 {{jsxref("Function.apply", "적용", "", 1)}}할 수 있습니다. <code>length</code> 속성을 가지지 않고, 대신 마지막 요소를 0부터 시작하는 순차적 인덱스로만 나타내는 객체에서는 의도한 것과 다르게 행동할 수 있습니다.</p> <h2 id="예제">예제</h2> <pre class="brush: js">var arr = [1, 2]; arr.unshift(0); // result of call is 3, the new array length // arr is [0, 1, 2] arr.unshift(-2, -1); // = 5 // arr is [-2, -1, 0, 1, 2] arr.unshift([-3]); // arr is [[-3], -2, -1, 0, 1, 2] </pre> <h2 id="명세">명세</h2> <table class="standard-table"> <tbody> <tr> <th scope="col">명세</th> <th scope="col">상태</th> <th scope="col">비고</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.13', 'Array.prototype.unshift')}}</td> <td>{{Spec2('ES5.1')}}</td> <td> </td> </tr> <tr> <td>{{SpecName('ES6', '#sec-array.prototype.unshift', 'Array.prototype.unshift')}}</td> <td>{{Spec2('ES6')}}</td> <td> </td> </tr> </tbody> </table> <h2 id="브라우저_호환성">브라우저 호환성</h2> <p>{{Compat("javascript.builtins.Array.unshift")}}</p> <h2 id="같이_보기">같이 보기</h2> <ul> <li>{{jsxref("Array.prototype.push()")}}</li> <li>{{jsxref("Array.prototype.pop()")}}</li> <li>{{jsxref("Array.prototype.shift()")}}</li> <li>{{jsxref("Array.prototype.concat()")}}</li> </ul>