From 75c8dd0fadc80ca01572d92407d8a987d779f675 Mon Sep 17 00:00:00 2001 From: AbdulrahmanAlshatti Date: Mon, 10 Mar 2025 13:33:07 +0300 Subject: [PATCH] Task Done - Abdulrahman Alshatti and Mishari Aldoub --- src/transactions.ts | 20 +++++++------------- 1 file changed, 7 insertions(+), 13 deletions(-) diff --git a/src/transactions.ts b/src/transactions.ts index f1cd836..6d4181f 100644 --- a/src/transactions.ts +++ b/src/transactions.ts @@ -21,8 +21,7 @@ const transactions: Transaction[] = [ // filterIncomeTransactions(transactions); // => [["income", 1000], ["income", 1500], ["income", 700]] function filterIncomeTransactions(transactions: Transaction[]): Transaction[] { // write your code here... - - return []; // replace empty array with what you see is fit + return transactions.filter((number)=> number[0] == "income"); // replace empty array with what you see is fit } // `filterExpenseTransactions` function that: @@ -32,8 +31,7 @@ function filterIncomeTransactions(transactions: Transaction[]): Transaction[] { // filterExpenseTransactions(transactions); // => [["expense", 500], ["expense", 300]] function filterExpenseTransactions(transactions: Transaction[]): Transaction[] { // write your code here... - - return []; // replace empty array with what you see is fit + return transactions.filter((number)=> number[0] == "expense"); // replace empty array with what you see is fit } // `calculateTotalIncome` function that: @@ -43,8 +41,7 @@ function filterExpenseTransactions(transactions: Transaction[]): Transaction[] { // calculateTotalIncome(transactions); // => 3200 (1000 + 1500 + 700) function calculateTotalIncome(transactions: Transaction[]): number { // write your code here... - - return -1; // replace -1 with what you see is fit + return filterIncomeTransactions(transactions).reduce((total,transaction)=> total + transaction[1],0); // replace -1 with what you see is fit } // `calculateTotalExpenses` function that: @@ -54,8 +51,7 @@ function calculateTotalIncome(transactions: Transaction[]): number { // calculateTotalExpenses(transactions); // => 800 (500 + 300) function calculateTotalExpenses(transactions: Transaction[]): number { // write your code here... - - return -1; // replace -1 with what you see is fit + return filterExpenseTransactions(transactions).reduce((total,transaction)=> total + transaction[1],0); // replace -1 with what you see is fit } // `calculateNetTotal` function that: @@ -64,9 +60,8 @@ function calculateTotalExpenses(transactions: Transaction[]): number { // example: // calculateNetTotal(transactions); // => 2400 (3200 - 800) function calculateNetTotal(transactions: Transaction[]): number { - // write your code here... - - return -1; // replace -1 with what you see is fit + // write your code here... + return calculateTotalIncome(transactions) - calculateTotalExpenses(transactions); // replace -1 with what you see is fit } // `filterSignificantTransactions` function that: @@ -81,8 +76,7 @@ function filterSignificantTransactions( threshold: number ): Transaction[] { // write your code here... - - return []; // replace empty array with what you see is fit + return transactions.filter((number)=> number[1] >= threshold); // replace empty array with what you see is fit } export {