diff options
author | Florian Merz <me@fiji-flo.de> | 2021-02-11 14:46:50 +0100 |
---|---|---|
committer | Florian Merz <me@fiji-flo.de> | 2021-02-11 14:46:50 +0100 |
commit | a55b575e8089ee6cab7c5c262a7e6db55d0e34d6 (patch) | |
tree | 5032e6779a402a863654c9d65965073f09ea4182 /files/es/orphaned/web/javascript/reference | |
parent | 8260a606c143e6b55a467edf017a56bdcd6cba7e (diff) | |
download | translated-content-a55b575e8089ee6cab7c5c262a7e6db55d0e34d6.tar.gz translated-content-a55b575e8089ee6cab7c5c262a7e6db55d0e34d6.tar.bz2 translated-content-a55b575e8089ee6cab7c5c262a7e6db55d0e34d6.zip |
unslug es: move
Diffstat (limited to 'files/es/orphaned/web/javascript/reference')
-rw-r--r-- | files/es/orphaned/web/javascript/reference/global_objects/array/prototype/index.html | 188 |
1 files changed, 188 insertions, 0 deletions
diff --git a/files/es/orphaned/web/javascript/reference/global_objects/array/prototype/index.html b/files/es/orphaned/web/javascript/reference/global_objects/array/prototype/index.html new file mode 100644 index 0000000000..2098f514ad --- /dev/null +++ b/files/es/orphaned/web/javascript/reference/global_objects/array/prototype/index.html @@ -0,0 +1,188 @@ +--- +title: Array.prototype +slug: Web/JavaScript/Referencia/Objetos_globales/Array/prototype +tags: + - Array + - Arreglo + - JavaScript + - Property + - Propiedad +translation_of: Web/JavaScript/Reference/Global_Objects/Array/prototype +--- +<div>{{JSRef}}</div> + +<p>La propiedad <strong><code>Array.prototype</code></strong> representa el prototipo del constructor {{jsxref("Array")}} y le permite agregar nuevas propiedades y métodos a todos los objetos Array.</p> + +<pre class="brush: js">// Si JavaScript no proporciona un método first() de forma nativa, +// agrega un nuevo método que devuelve el primer elemento de una matriz. + +if (!Array.prototype.first) { + Array.prototype.first = function() { + return this[0]; + } +} +</pre> + +<h2 id="Description" name="Description">Descripción</h2> + +<p>Las instancias {{jsxref("Array")}} heredan de <code>Array.prototype</code>. Al igual que con todos los constructores, puede cambiar el prototipo del constructor del objeto para realizar cambios en todas las instancias {{jsxref("Array")}} . Por ejemplo, puede agregar nuevos métodos y propiedades para extender todos los objetos <code>Array</code>. Esto se usa para {{Glossary("Polyfill", "polyfilling")}}, por ejemplo.</p> + +<p>Un hecho poco conocido: <code>Array.prototype</code> en sí es un {{jsxref("Array")}}:</p> + +<pre class="brush: js">Array.isArray(Array.prototype); // true</pre> + +<p>{{js_property_attributes(0, 0, 0)}}</p> + +<h2 id="Properties" name="Properties">Propiedades</h2> + +<dl> + <dt><code>Array.prototype.constructor</code></dt> + <dd>Especifica la función que crea el prototipo de un objeto.</dd> + <dt>{{jsxref("Array.prototype.length")}}</dt> + <dd>Refleja el número de elementos en un array.</dd> + <dt>{{jsxref("Array.@@unscopables", "Array.prototype[@@unscopables]")}}</dt> + <dd>Un símbolo que contiene nombres de propiedades para excluir de un ámbito vinculante <code><a href="/es/docs/Web/JavaScript/Reference/Statements/with">with</a></code>.</dd> +</dl> + +<h2 id="Methods" name="Methods">Métodos</h2> + +<h3 id="Mutator_methods" name="Mutator_methods">Métodos de mutación</h3> + +<p>Estos métodos modifican el array:</p> + +<dl> + <dt>{{jsxref("Array.prototype.copyWithin()")}}</dt> + <dd>Copia una secuencia de elementos dentro del array.</dd> + <dt>{{jsxref("Array.prototype.fill()")}}</dt> + <dd>Rellena todos los elementos de un array desde un índice de inicio hasta un índice de fin con un valor determinado.</dd> + <dt>{{jsxref("Array.prototype.pop()")}}</dt> + <dd>Elimina el último elemento de un array y devuelve dicho elemento.</dd> + <dt>{{jsxref("Array.prototype.push()")}}</dt> + <dd>Añade uno o más elementos al final de un array y devuelve la nueva longitud del array.</dd> + <dt>{{jsxref("Array.prototype.reverse()")}}</dt> + <dd>Invierte el orden de los elementos de un array — el primero será el último y el último será el primero.</dd> + <dt>{{jsxref("Array.prototype.shift()")}}</dt> + <dd>Elimina el primer elemento de un array y devuelve dicho elemento.</dd> + <dt>{{jsxref("Array.prototype.sort()")}}</dt> + <dd>Ordena los elementos de un array y devuelve el array.</dd> + <dt>{{jsxref("Array.prototype.splice()")}}</dt> + <dd>Añade o elimina elementos de un array.</dd> + <dt>{{jsxref("Array.prototype.unshift()")}}</dt> + <dd>Añade uno o más elementos al principio del array y devuelve la nueva longitud del array.</dd> +</dl> + +<h3 id="Accessor_methods" name="Accessor_methods">Métodos de consulta</h3> + +<p>Estos métodos no modifican el array y devuelven alguna representación del array.</p> + +<dl> + <dt>{{jsxref("Array.prototype.concat()")}}</dt> + <dd>Devuelve un nuevo array compuesto por este array unido con otro(s) array(s) y/o valor(es).</dd> + <dt>{{jsxref("Array.prototype.includes()")}}</dt> + <dd>Determina si un array contiene cierto elemento, devolviendo <code>true</code> o <code>false</code> apropiadamente.</dd> + <dt>{{jsxref("Array.prototype.indexOf()")}}</dt> + <dd>Devuelve el primer (menor) índice de un elemento dentro del array que sea igual al valor especificado, o -1 si no contiene dicho valor.</dd> + <dt>{{jsxref("Array.prototype.join()")}}</dt> + <dd>Une todos los elementos de un array en una cadena de texto.</dd> + <dt>{{jsxref("Array.prototype.lastIndexOf()")}}</dt> + <dd>Devuelve el último (mayor) índice de un elemento dentro del array que sea igual al valor especificado, o -1 si no contiene dicho valor.</dd> + <dt>{{jsxref("Array.prototype.slice()")}}</dt> + <dd>Extrae una sección de un array y devuelve un nuevo array.</dd> + <dt>{{jsxref("Array.prototype.toSource()")}} {{non-standard_inline}}</dt> + <dd>Devuelve el array literal que representa al propio array especificado; puedes usar este valor para crear un nuevo array. Reemplaza al método {{jsxref("Object.prototype.toSource()")}}.</dd> + <dt>{{jsxref("Array.prototype.toString()")}}</dt> + <dd>Devuelve una cadena de texto que representa el array y sus elementos. Reemplaza el método {{jsxref("Object.prototype.toString()")}}.</dd> + <dt>{{jsxref("Array.prototype.toLocaleString()")}}</dt> + <dd>Devuelve una cadena de texto localizada que representa el array y sus elementos. Reemplaza el método {{jsxref("Object.prototype.toLocaleString()")}}.</dd> +</dl> + +<h3 id="Iteration_methods" name="Iteration_methods">Métodos de iteración</h3> + +<p>Muchos métodos toman como argumentos funciones que son llamadas mientras se procesa el array. Cuando estos métodos son llamados, la longitud (<code style="font-style: normal;">length</code>) del array es muestreado, y cualquier elemento añadido por encima de esta longitud dentro de la función (<span style="font-family: consolas,monaco,andale mono,monospace;">callback</span>) no es visitado. Otros cambios sobre el array (establecer el valor o eliminar un elemento) podría afectar el resultado de la operación si el método visita el elemento después. Mientras que el comportamiento especifico de estos métodos en muchos casos es bien definido, no deberías delegar sobre eso con la finalidad de no confundir a otros que podrían leer tu código. Si debes modificar el array, copialo en un nuevo array en su lugar.</p> + +<dl> + <dt>{{jsxref("Array.prototype.entries()")}}</dt> + <dd>Devuelve un nuevo objeto <code>Array Iterator</code> que contiene los pares clave/valor para cada índice en el array.</dd> + <dt>{{jsxref("Array.prototype.every()")}}</dt> + <dd>Devuelve true si cada elemento en este array satisface la función de testeo proporcionada.</dd> + <dt>{{jsxref("Array.prototype.filter()")}}</dt> + <dd>Crea un nuevo array con todos los elementos de este array para los cuales la función de filtrado proporcionada devuelve true.</dd> + <dt>{{jsxref("Array.prototype.find()")}}</dt> + <dd>Devuelve el elemento hallado en el array si un elemento en el array satisface la función de testeo proporcionada, o <code>undefined</code> si no se halla ninguno.</dd> + <dt>{{jsxref("Array.prototype.findIndex()")}}</dt> + <dd>Devuelve el índice hallado en el array si un elemento en el array satisface la función de testeo proporcionada, o -1 si no se halla ninguno.</dd> +</dl> + +<dl> + <dt>{{jsxref("Array.prototype.forEach()")}}</dt> + <dd>Llama a una función para cada elemento del array.</dd> + <dt>{{jsxref("Array.prototype.keys()")}}</dt> + <dd>Devuelve un nuevo <code>Array Iterator</code> que contiene las claves para cada índice en el array.</dd> + <dt>{{jsxref("Array.prototype.map()")}}</dt> + <dd>Crea un nuevo array con el resultado de llamar a la función proporcionada sobre cada elemento de este array.</dd> + <dt>{{jsxref("Array.prototype.reduce()")}}</dt> + <dd>Aplica una función que recibe un acumulador y cada valor del array (de izquierda a derecha) para reducirlo a un único valor.</dd> + <dt>{{jsxref("Array.prototype.reduceRight()")}}</dt> + <dd>Aplica una función que recibe un acumulador y cada valor del array (de derecha a izquierda) para reducirlo a un único valor.</dd> + <dt>{{jsxref("Array.prototype.some()")}}</dt> + <dd>Devuelve true si al menos un elemento en este array satisface la función de testeo proporcionada.</dd> + <dt>{{jsxref("Array.prototype.values()")}}</dt> + <dd>Devuelve un nuevo objeto <code>Array Iterator</code> que contiene los valores para cada índice en el array.</dd> + <dt>{{jsxref("Array.prototype.@@iterator()", "Array.prototype[@@iterator]()")}}</dt> + <dd>Devuelve un nuevo objeto <code>Array Iterator</code> que contiene los valores para cada índice en el array.</dd> +</dl> + +<h3 id="Generic_methods" name="Generic_methods">Métodos genéricos (no estándar)</h3> + +<p>Muchos métodos en el objeto Javascript Array son diseñados para ser generalmente llamados para todos los objetos que "parecen" Arrays. Es decir, pueden ser usados sobre cualquier objeto que tenga una propiedad longitud (<code style="font-style: normal;">length</code>), y puedan ser accedidos usando nombres de propiedades numéricos (como con la indexación <code><span style="font-family: consolas,monaco,andale mono,monospace;">array[5]</span></code>). Algunos métodos, tales como {{jsxref("Array.join", "join")}}, sólo leen la <code>longitud</code> y propiedades numéricas del objeto sobre el cual son llamados. Otros, como {{jsxref("Array.reverse", "reverse")}}, requieren que las propiedades numéricas del objeto y la <code>longitud</code> sean mutables; estos métodos, por tanto, no pueden ser llamados sobre objetos como {{jsxref("String")}}, los cuales no permiten que su longitud o propiedades numéricas sintetizadas sean establecidas.</p> + +<h2 id="Specifications" name="Specifications">Especificaciones</h2> + +<p> </p> + +<table> + <tbody> + <tr> + <th scope="col">Especificación</th> + <th scope="col">Estado</th> + <th scope="col">Comentario</th> + </tr> + <tr> + <td>{{SpecName('ES1')}}</td> + <td>{{Spec2('ES1')}}</td> + <td>Definición inicial.</td> + </tr> + <tr> + <td>{{SpecName('ES5.1', '#sec-15.4.3.1', 'Array.prototype')}}</td> + <td>{{Spec2('ES5.1')}}</td> + <td> </td> + </tr> + <tr> + <td>{{SpecName('ES6', '#sec-array.prototype', 'Array.prototype')}}</td> + <td>{{Spec2('ES6')}}</td> + <td> + <p>Se agregaron los métodos <code>copyWithin()</code>, <code>fill()</code>, <code>entries()</code>, <code>keys()</code>, <code>values()</code>, <code>find()</code>, <code>findIndex()</code>.</p> + </td> + </tr> + <tr> + <td>{{SpecName('ES7', '#sec-array.prototype', 'Array.prototype')}}</td> + <td>{{Spec2('ES7')}}</td> + <td>Se agregó el método <code>includes()</code>.</td> + </tr> + </tbody> +</table> + +<p> </p> + +<h2 id="Browser_compatibility" name="Browser_compatibility">Compatibilidad con navegadores</h2> + +<div>{{Compat("javascript.builtins.Array.prototype")}}</div> + +<div id="compat-mobile"> </div> + +<h2 id="See_also" name="See_also">Ver también</h2> + +<ul> + <li>{{jsxref("Array")}}</li> + <li>{{jsxref("Function.prototype")}}</li> +</ul> |