didkoslawow

Untitled

Jan 2nd, 2023
117
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.84 KB | None | 0 0
  1. function arrayManipulator(numbers, commands) {
  2.  
  3. for (let i = 0; i < commands.length; i++) {
  4. let command = commands[i].split(" ");
  5. switch (command[0]) {
  6. case "add":
  7. let addIndex = Number(command[1]);
  8. let elementToAdd = Number(command[2]);
  9. numbers.splice(addIndex, 0, elementToAdd);
  10. break;
  11. case "addMany":
  12. let addManyIndex = Number(command[1]);
  13. command.splice(0, 2);
  14. let numbersToAdd = command.map(Number);
  15. numbers.splice(addManyIndex, 0, ...numbersToAdd);
  16. break;
  17. case "contains":
  18. let checkElement = Number(command[1]);
  19. console.log(numbers.indexOf(checkElement));
  20. break;
  21. case "remove":
  22. let removeIndex = Number(command[1]);
  23. numbers.splice(removeIndex, 1);
  24. break;
  25. case "shift":
  26. let shiftPositions = Number(command[1]);
  27. for (let l = 0; l < shiftPositions; l++) {
  28. let shiftetElement = numbers.shift();
  29. numbers.push(shiftetElement);
  30. }
  31. break;
  32. case "sumPairs":
  33. let sumArray = [];
  34. if (numbers.length % 2 !== 0) {
  35. numbers.push(0);
  36. for (let m = 0; m < numbers.length; m += 2) {
  37.  
  38. let sumPair = Number(numbers[i]) + Number(numbers[i + 1]);
  39. sumArray.push(sumPair);
  40. }
  41. } else {
  42. for (let m = 0; m < numbers.length; m += 2) {
  43.  
  44. let sumPair = Number(numbers[i]) + Number(numbers[i + 1]);
  45. sumArray.push(sumPair);
  46. }
  47. }
  48. numbers = sumArray;
  49. break;
  50. case 'print':
  51. console.log('[ ' + numbers.join(', ') + ' ]');
  52. break;
  53. }
  54. }
  55. }
Advertisement
Add Comment
Please, Sign In to add comment