Loading...
a.polyanska avatar a.polyanska 107 Точки

[Exam Problems] JavaScript Basics - Problem {4} - Cloud Manager (04 Sptember 2014)

Пак аз :) Опитвам се да реша задачата и до пълненето на първоначалния асоциативен масив си работи коректно. След сортирането, обаче, не ми излизат стойностите на memory-то. Някой вижда ли къде е проблема- уж, поглеждайки за насоки авторското решение, на практика си го преписах, но очевидно и преписването не правя кадърно undecided. Ето кода

0
JavaScript Fundamentals
AleksandurSeferinkin avatar AleksandurSeferinkin 333 Точки
Best Answer

for (var e in sortedExtensions) - така не се обикалят масивите, а sortedExtension е обикновен масив. - Всъщност може, но е хипер объркващо и не е прието.

 

for (var i = 0, len = sortedExtensions.length; i < len; i++) {
var extension = sortedExtensions[i];
var fileInfo = {
files: result[extension].names.sort(),
memory: totalMemory(result[extension].memory)
}
output[extension] = fileInfo;
}
Забележи, че във този цикъл използваш променливата 'extension', която бе дефинирана по-нагоре в кода ти и тя си остава една и съща по време на целия цикъл. Аз предефинирах тази променлива във цикъла, за да може да се променя нейната стойност.

PS: Не е нужно да се прави цял масив за memory. Аз го направих само със числен тип, понеже масивите са много по-бавни от събирането на 2 числа. - ето моето решение
1
22/11/2014 00:48:01
a.polyanska avatar a.polyanska 107 Точки

всъщност и аз го бях направила първоначалоно без масив, но когато ми зацикли там реших да пробвам по този начин- не се оправи проблема, но така си остана в кода. Благодаря за подробния отговор- тръгна и даже разбрах защо :)

1
lostm1nd avatar lostm1nd 121 Точки

Не знам какво е условието на задачата и може да греша, но мисля, че във втория цикъл искаш да взимаш като fileInfo различните пропъртита от result обекта, а в момента винаги достъпваш едно и също => result[extension]

1
a.polyanska avatar a.polyanska 107 Точки

Не се се щам за лесен начин да дам линк към условието, а да го копирам ще е дълго. Идеята ми е от съответния extension  да взема стойността по ключ memory. С имената ми се получава, а с мемори-то нещо бъркам.

0
dimipan avatar dimipan 30 Точки

Здравей! За авторското решение на тази задача, и аз не го разбирам напълно, много е сложно. Ако искаш погледни моето 4. Cloud Manager, мисля, че е по-просто и минава всички тестове в http://judge.softuni.bg! Надявам се, че съм ти помогнал. Успех на изпита!

1
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.