Завдання: Реалізація статичних властивостей і методів у класі
Завдання
Уявіть, що ви створюєте систему керування інвентарем для інтернет-магазину. Клас Product має відстежувати загальну кількість доданих до інвентаря продуктів, а також надавати функціонал для порівняння цін двох продуктів.
- Визначення статичної властивості:
- У класі
Productстворіть статичну властивістьtotalProducts, ініціалізовану значенням0; - Кожного разу, коли створюється новий екземпляр
Product, збільшуйтеtotalProductsна 1, щоб відстежувати кількість доданих до інвентаря продуктів.
- У класі
- Визначення статичного методу: Визначте статичний метод
comparePrices(product1, product2), який приймає два екземпляриProductяк параметри та повертає:"Product 1 is more expensive", якщо цінаproduct1вища;"Product 2 is more expensive", якщо цінаproduct2вища;"Both products have the same price", якщо ціни однакові.
12345678910111213141516171819202122232425262728293031class Product { _____ _____ = 0; // Define static property for total products constructor(name, price) { this.name = name; this.price = price; Product._____+=1; // Increment totalProducts } // Static method to compare prices _____ comparePrices(product1, product2) { if (product1.price > product2.price) { return _____; } else if (_____ < _____) { return _____; } else { return 'Both products have the same price'; } } } // Testing const product1 = new Product('Laptop', 1200); const product2 = new Product('Smartphone', 800); const product3 = new Product('Tablet', 1200); console.log(Product.comparePrices(product1, product2)); // Expected: Product 1 is more expensive console.log(Product.comparePrices(product1, product3)); // Expected: Both products have the same price console.log(Product.comparePrices(product2, product3)); // Expected: Product 2 is more expensive console.log(Product.totalProducts); // Expected: 3
- Визначте статичну властивість з назвою
totalProductsта ініціалізуйте її значенням0; - У конструкторі збільшуйте
Product.totalProductsна 1 кожного разу, коли створюється новий екземплярProduct; - Визначте статичний метод
comparePrices(product1, product2), який приймає два параметри:product1таproduct2; - У методі
comparePricesвикористовуйте операторif, щоб перевірити, чиproduct1.priceбільше заproduct2.price. Якщо так, поверніть"Product 1 is more expensive"; - Використайте оператор
else if, щоб перевірити, чиproduct1.priceменше заproduct2.price. Якщо так, поверніть"Product 2 is more expensive".
12345678910111213141516171819202122232425262728293031class Product { static totalProducts = 0; // Define static property for total products constructor(name, price) { this.name = name; this.price = price; Product.totalProducts+=1; // Increment totalProducts } // Static method to compare prices static comparePrices(product1, product2) { if (product1.price > product2.price) { return 'Product 1 is more expensive'; } else if (product1.price < product2.price) { return 'Product 2 is more expensive'; } else { return 'Both products have the same price'; } } } // Testing const product1 = new Product('Laptop', 1200); const product2 = new Product('Smartphone', 800); const product3 = new Product('Tablet', 1200); console.log(Product.comparePrices(product1, product2)); // Output: Product 1 is more expensive console.log(Product.comparePrices(product1, product3)); // Output: Both products have the same price console.log(Product.comparePrices(product2, product3)); // Output: Product 2 is more expensive console.log(Product.totalProducts); // Output: 3
Все було зрозуміло?
Дякуємо за ваш відгук!
Секція 1. Розділ 13
Запитати АІ
Запитати АІ
Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат
Awesome!
Completion rate improved to 2.22
Завдання: Реалізація статичних властивостей і методів у класі
Свайпніть щоб показати меню
Завдання
Уявіть, що ви створюєте систему керування інвентарем для інтернет-магазину. Клас Product має відстежувати загальну кількість доданих до інвентаря продуктів, а також надавати функціонал для порівняння цін двох продуктів.
- Визначення статичної властивості:
- У класі
Productстворіть статичну властивістьtotalProducts, ініціалізовану значенням0; - Кожного разу, коли створюється новий екземпляр
Product, збільшуйтеtotalProductsна 1, щоб відстежувати кількість доданих до інвентаря продуктів.
- У класі
- Визначення статичного методу: Визначте статичний метод
comparePrices(product1, product2), який приймає два екземпляриProductяк параметри та повертає:"Product 1 is more expensive", якщо цінаproduct1вища;"Product 2 is more expensive", якщо цінаproduct2вища;"Both products have the same price", якщо ціни однакові.
12345678910111213141516171819202122232425262728293031class Product { _____ _____ = 0; // Define static property for total products constructor(name, price) { this.name = name; this.price = price; Product._____+=1; // Increment totalProducts } // Static method to compare prices _____ comparePrices(product1, product2) { if (product1.price > product2.price) { return _____; } else if (_____ < _____) { return _____; } else { return 'Both products have the same price'; } } } // Testing const product1 = new Product('Laptop', 1200); const product2 = new Product('Smartphone', 800); const product3 = new Product('Tablet', 1200); console.log(Product.comparePrices(product1, product2)); // Expected: Product 1 is more expensive console.log(Product.comparePrices(product1, product3)); // Expected: Both products have the same price console.log(Product.comparePrices(product2, product3)); // Expected: Product 2 is more expensive console.log(Product.totalProducts); // Expected: 3
- Визначте статичну властивість з назвою
totalProductsта ініціалізуйте її значенням0; - У конструкторі збільшуйте
Product.totalProductsна 1 кожного разу, коли створюється новий екземплярProduct; - Визначте статичний метод
comparePrices(product1, product2), який приймає два параметри:product1таproduct2; - У методі
comparePricesвикористовуйте операторif, щоб перевірити, чиproduct1.priceбільше заproduct2.price. Якщо так, поверніть"Product 1 is more expensive"; - Використайте оператор
else if, щоб перевірити, чиproduct1.priceменше заproduct2.price. Якщо так, поверніть"Product 2 is more expensive".
12345678910111213141516171819202122232425262728293031class Product { static totalProducts = 0; // Define static property for total products constructor(name, price) { this.name = name; this.price = price; Product.totalProducts+=1; // Increment totalProducts } // Static method to compare prices static comparePrices(product1, product2) { if (product1.price > product2.price) { return 'Product 1 is more expensive'; } else if (product1.price < product2.price) { return 'Product 2 is more expensive'; } else { return 'Both products have the same price'; } } } // Testing const product1 = new Product('Laptop', 1200); const product2 = new Product('Smartphone', 800); const product3 = new Product('Tablet', 1200); console.log(Product.comparePrices(product1, product2)); // Output: Product 1 is more expensive console.log(Product.comparePrices(product1, product3)); // Output: Both products have the same price console.log(Product.comparePrices(product2, product3)); // Output: Product 2 is more expensive console.log(Product.totalProducts); // Output: 3
Все було зрозуміло?
Дякуємо за ваш відгук!
Секція 1. Розділ 13