mirror of
https://github.com/freeCodeCamp/freeCodeCamp.git
synced 2026-01-26 12:03:36 -05:00
3.0 KiB
3.0 KiB
id, title, localeTitle, challengeType
| id | title | localeTitle | challengeType |
|---|---|---|---|
| 587d78b2367417b2b2512b10 | Remove Items Using splice() | Quitar elementos utilizando empalme () | 1 |
Description
shift() y pop() , pero ¿qué pasa si queremos eliminar un elemento de algún lugar en el medio? ¿O eliminar más de un elemento a la vez? Bueno, ahí es donde entra splice() . splice() nos permite hacer precisamente eso: eliminar cualquier número de elementos consecutivos de cualquier lugar en una matriz.
splice() puede tomar hasta 3 parámetros, pero por ahora, nos enfocaremos solo en los primeros 2. Los primeros dos parámetros de splice() son enteros que representan índices, o posiciones, de la matriz que splice() es siendo llamado. Y recuerde, las matrices tienen un índice de cero , por lo que para indicar el primer elemento de una matriz, usaríamos 0 . El primer parámetro de splice() representa el índice en la matriz a partir de la cual comenzar a eliminar elementos, mientras que el segundo parámetro indica el número de elementos a eliminar. Por ejemplo:
let array = ['today', 'was', 'not', 'so', 'great'];
array.splice(2, 2);
// remove 2 elements beginning with the 3rd element
// array now equals ['today', 'was', 'great']
splice() no solo modifica la matriz en la que se llama, sino que también devuelve una nueva matriz que contiene el valor de los elementos eliminados:
let array = ['I', 'am', 'feeling', 'really', 'happy'];
let newArray = array.splice(3, 2);
// newArray equals ['really', 'happy']
Instructions
sumOfTen , que toma una matriz como argumento y devuelve la suma de los elementos de esa matriz. Modifique la función, usando splice() , para que devuelva un valor de 10 .
Tests
tests:
- text: <code>sumOfTen</code> debe devolver 10
testString: 'assert.strictEqual(sumOfTen([2, 5, 1, 5, 2, 1]), 10, "<code>sumOfTen</code> should return 10");'
- text: La función <code>sumOfTen</code> debe utilizar el método <code>splice()</code>
testString: 'assert.notStrictEqual(sumOfTen.toString().search(/\.splice\(/), -1, "The <code>sumOfTen</code> function should utilize the <code>splice()</code> method");'
Challenge Seed
function sumOfTen(arr) {
// change code below this line
// change code above this line
return arr.reduce((a, b) => a + b);
}
// do not change code below this line
console.log(sumOfTen([2, 5, 1, 5, 2, 1]));
Solution
// solution required