Алгоритми Java та структури данних

function updateRecords(records, id, prop, value) {
if (value === ‘’) {
delete records[id][prop];
} else if (prop === “tracks”) {
records[id][prop] = records[id][prop] || ; // shortcircuit evaluation
records[id][prop].push(value);
} else {
records[id][prop] = value;
}
return records;
}

Це программа оновлення музичних альбомів від розробника задачі, я розумію майже усю логіку коду, але не можу зрозуміти. чому він починає код зі строчки

if (value === ‘’) {
delete records[id][prop];

Ми ж і так знаемо що Value не буде пустою строкою, навіщо цей блок коду?

Why do you say that?

One of the requirements is

If value is an empty string, delete the given prop property from the album.

And two of the tests have these calls

updateRecords(recordCollection, 2548, "artist", "")

updateRecords(recordCollection, 2548, "tracks", "")

1 Like