Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 10 additions & 3 deletions src/challenge.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,23 +5,30 @@
// and returns the modified groceries list
function deleteThirdItem(groceries: string[]): string[] {
// write your code here...
return [];
// delete groceries[2]; this will produce an undefined value baaddd practice
groceries.splice(2, 1); // at index 2 delete one element, it will update the array length accordingly, look into mdn docs for splice

return groceries;
}

// Step 2:
// Write a insertItemAtBeginning function that inserts a new grocery item at the beginning of the groceries argument
// and returns the modified groceries array
function insertItemAtBeginning(groceries: string[], item: string): string[] {
// write your code here...
return [];
groceries.unshift(item);
return groceries;
}

// Step 3:
// Write a replaceFirstTwoItems function that replace the first two elements with 'ketchup' and 'chili'
// and return the modified groceries array
function replaceFirstTwoItems(groceries: string[]): string[] {
// write your code here...
return [];
// this will replace not append new items
groceries[0] = "ketchup";
groceries[1] = "chili";
return groceries;
}

export { deleteThirdItem, insertItemAtBeginning, replaceFirstTwoItems };
41 changes: 29 additions & 12 deletions src/groceries.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,40 +2,50 @@
// Write a createGroceries function that returns an array with 6 groceries items (each item is a string)
function createGroceries(): string[] {
// write your code here...

return []; // replace empty array with what you see is fit
let groceries: string[] = [
"eggs",
"milk",
"flour",
"butter",
"vanilla extract",
"cocoa powder",
];
return groceries; // replace empty array with what you see is fit
}

// Step 2:
// Write a getSecondGroceryItem function that returns the second grocery item from `groceries` argument
function getSecondGroceryItem(groceries: string[]): string {
// write your code here...

return ""; // replace empty string with what you see is fit
return groceries[1]; // replace empty string with what you see is fit
}

// Step 3:
// Write a getGroceriesCount that returns the length of the `groceries` argument
function getGroceriesCount(groceries: string[]): number {
// write your code here...

return 0; // replace zero with what you see is fit
let GroceriesCount: number = groceries.length;
return GroceriesCount; // replace zero with what you see is fit
}

// Step 4:
// Write a getLastGroceryItem function that returns the last grocery item from `groceries` argument
function getLastGroceryItem(groceries: string[]): string {
// write your code here...

return ""; // replace empty string with what you see is fit
let lastGroceryItem: string = groceries[groceries.length - 1];

return lastGroceryItem; // replace empty string with what you see is fit
}

// Step 5:
// Write a removeLastGroceryItem function that removes the last grocery item and return it
function removeLastGroceryItem(groceries: string[]): string {
function removeLastGroceryItem(groceries: string[]): string | undefined {
// the OR undefined type added because the return function was throwing an error that pop returns either string or undefined
// write your code here...

return ""; // replace empty string with what you see is fit
let removedLastGroceryItem = groceries.pop();
return removedLastGroceryItem; // replace empty string with what you see is fit
}

// Step 6:
Expand All @@ -48,15 +58,22 @@ function addNewGroceries(
): string[] {
// write your code here...

return []; // replace empty array with what you see is fit
groceries.push(itemOne);
groceries.push(itemTwo);

return groceries; // replace empty array with what you see is fit
}

// Step 7:
// Write a getFirstThreeGroceryItems function that returns a new array that contains the first three grocery items
function getFirstThreeGroceryItems(groceries: string[]): string[] {
// write your code here...

return []; // replace empty array with what you see is fit
let firstThreeGroceryItems: string[] = [
groceries[0],
groceries[1],
groceries[2],
];
return firstThreeGroceryItems; // replace empty array with what you see is fit
}

export {
Expand Down