From f32d9ce300cd9a13c0d447b74d1f2d0554b12844 Mon Sep 17 00:00:00 2001 From: Krio Date: Sat, 11 Sep 2021 13:33:14 +0700 Subject: [PATCH] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB=D0=B5?= =?UTF-8?q?=D0=BD=D0=B0=20=D1=80=D0=B0=D0=B1=D0=BE=D1=82=D0=B0=2014?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- labs/lab14/desc.json | 14 +++----------- labs/lab14/main.js | 24 +++++++++++++++++++++++- 2 files changed, 26 insertions(+), 12 deletions(-) diff --git a/labs/lab14/desc.json b/labs/lab14/desc.json index 57e0fb2..3a1635b 100644 --- a/labs/lab14/desc.json +++ b/labs/lab14/desc.json @@ -1,14 +1,6 @@ { "number": 14, - "task": "", - "vars": [ - [ - { - "name": "", - "desc": "", - "data": "" - } - ] - ], - "complete": false + "task": "Вам будет предоставлен набор напитков, каждый из которых является объектом с двумя свойствами: названием и ценой. Создайте функцию с массивом напитков в качестве аргумента и верните объекты напитков, отсортированные по цене в порядке возрастания.", + "vars": [[]], + "complete": true } \ No newline at end of file diff --git a/labs/lab14/main.js b/labs/lab14/main.js index 466be91..ecc2885 100644 --- a/labs/lab14/main.js +++ b/labs/lab14/main.js @@ -3,5 +3,27 @@ function main(formName) { let result = document.getElementById("result"); - result.textContent = "Результат: неопределенно"; + let arr = [ + {name: "Кола", price: 5}, + {name: "Вода", price: 1}, + {name: "Чай", price: 2}, + {name: "Коктейль", price: 10}, + {name: "Мохито", price: 8} + ]; + + if (item instanceof Array) { + result.textContent = "Ошибка: arr должен быть массивом!"; + return; + } + + result.textContent = "Результат: " + sortDrinks(arr); +} + +function sortDrinks(arr) { + let result = []; + + arr.sort( (first, second) => first.price > second.price ? 1 : -1 ); + arr.forEach( elem => result.push(elem.name + " - " + elem.price) ); + + return result.join(", "); }