Loading...
MariqnK1 avatar MariqnK1 52 Точки

Tickets 0/100

https://pastebin.com/B9pC4q5f

https://judge.softuni.bg/Contests/Practice/Index/2371#7

 

Когато пробвам да сортирам по destination ми дава:

sorted.sort((a, b) => a[0].destination - b[0].destination)
                                   ^

TypeError: Cannot read property 'destination' of undefined

 

Някакви идеи, насоки?

Тагове:
0
JavaScript Advanced
willystyle avatar willystyle 2472 Точки
Best Answer

Ти сортираш просто масив от обекти, тези [0] са излишни, може би се бъркаш със случая, когато сортираш  масив получен от Object.entries който е масив от масиви.
sorted.sort((a, b) => a.destination.localeCompare(b.destination))

https://pastebin.com/KbJyRx5w

2
22/07/2020 17:22:05
MariqnK1 avatar MariqnK1 52 Точки

Как да не се объркам, защото като тествах локално и принтирах e.g. result[0].destination ми излизаше съответната стойност. Следователно трябва да работи и при сортирането, както при console.log, но явно не. Колко близко съм бил. Мерси, Уили!

1
gbsho avatar gbsho 9 Точки

без клас, с по-малко редове:

function tickets(arr, str){
    let tickets = arr.map(e=>{
            let [destination,price,status] = e.split("|");
            price = Number(price);
            return {destination, price, status};
        }).sort((a,b)=>{
            if(str==="price"){
                return 0;
            }else{
                return a[str].localeCompare(b[str]);
            }
        });
    return tickets;
}

 

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