Здравейте, опитвам се да реша задачата за позицията на шахматната дъска. Мисля, че логиката ми е правилна, да знам, че може да го рефакторна да изглежда още по чисто, но пиша за друго.
Пускай ги дебъгара установих, че функцията .toLowerCase от нея се случва променливата label = undefined, и не мога да разбера защо. Може ли някой да даде обяснение или да ме насочи къде да прочета.
Добавям копие от кода тук:
let input = [
‘G’,
‘6’
];
let print = this.print || console.log;
let gets = this.gets || ((arr, index) => () => arr[index++])(input, 0);
let labelLine = gets();
let rankLine = Number(gets());
let result;
let label = labelLine.toLowerCase;
let horizontal;
if (label == ‘a’ || label == ‘c’ || label == ‘e’ || label == ‘g’){
horizontal = ‘A’;
} else {
horizontal = ‘B’;
}
if (rankLine % 2 === 1) {
if (horizontal === ‘A’) {
result = ‘dark’;
} else {
result = ‘light’;
}
} else {
if (horizontal === ‘A’) {
result = ‘light’;
} else {
result = ‘dark’;
}
}
print(result);