Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function getGrade(data) {
- let nameMap = new Map()
- for (const array of data) {
- let name = array[0]
- let grade = Number(array[1])
- let subject = array[2]
- if (!nameMap.has(name)) {
- nameMap.set(name, new Map())
- }
- nameMap.get(name).set(subject, grade)
- }
- let entriesSorted= [...nameMap.entries()].sort(([aSubject,aGrade], [bSubject,bGrade]) => aSubject.localeCompare(bSubject));
- for (let [name, inerrMap] of entriesSorted) {
- for (const [subject, grade] of inerrMap) {
- console.log(`${name} -> ${subject}: ${grade}`)
- }
- }
- }
- let input = [
- ["Pesho", "5.54", "JS"],
- ["Vasil", "4.80", "C#"],
- ["Nikolai", "5.80", "JS"]]
- getGrade(input)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement