Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function arrayManipulator(numbers, commands) {
- for (let i = 0; i < commands.length; i++) {
- let command = commands[i].split(" ");
- switch (command[0]) {
- case "add":
- let addIndex = Number(command[1]);
- let elementToAdd = Number(command[2]);
- numbers.splice(addIndex, 0, elementToAdd);
- break;
- case "addMany":
- let addManyIndex = Number(command[1]);
- command.splice(0, 2);
- let numbersToAdd = command.map(Number);
- numbers.splice(addManyIndex, 0, ...numbersToAdd);
- break;
- case "contains":
- let checkElement = Number(command[1]);
- if (numbers.includes(checkElement)) {
- console.log(numbers.indexOf(checkElement));
- break;
- } else {
- console.log(-1);
- break;
- }
- break;
- case "remove":
- let removeIndex = Number(command[1]);
- numbers.splice(removeIndex, 1);
- break;
- case "shift":
- let shiftPositions = Number(command[1]);
- for (let l = 0; l < shiftPositions; l++) {
- let shiftetElement = numbers.shift();
- numbers.push(shiftetElement);
- }
- break;
- case "sumPairs":
- if (numbers.length % 2 !== 0) {
- numbers.push(0);
- }
- let sumArray = [];
- for (let m = 0; m < numbers.length; m += 2) {
- let sumPair = Number(numbers[i]) + Number(numbers[i + 1]);
- sumArray.push(sumPair);
- }
- numbers = sumArray;
- break;
- default:
- break;
- }
- }
- console.log('[ ' + numbers.join(', ') + ' ]');
- }
Advertisement
Add Comment
Please, Sign In to add comment