Я думаю, что эти два блока имеют одинаковое значение, но второй код не работает, хотя первый работает.
Второй выглядит не так круто, но я думаю, что его легче понять, чем первый. one.
Первый из них является частью очень простого практического кода React здесь (https://en.reactjs.org/docs/lifting-state-up.html), и я немного изменил его.
//1st
const celsius = scale === 'f' ? tryConvert(temperature, toCelsius) : temperature;
const fahrenheit = scale === 'c' ? tryConvert(temperature, toFahrenheit) : temperature;
//2nd
if(scale === 'f') {
const celsius = tryConvert(temperature, toCelsius);
const fahrenheit = temperature
} else if (scale === 'c') {
const celsius = temperature;
const fahrenheit = tryConvert(temperature, toFahrenheit);
} else {
const celsius = temperature;
const fahrenheit = temperature;
}
При запуске моего кода React, включая вторые коды, на консоли появляется сообщение об ошибке «Цельсия не определена».
Во втором коде я думаю, что «градус Цельсия» должен быть определен независимо от «масштаба», потому что в последнем блоке есть оператор else.
В чем разница между этими двумя кодами ?
Извините за мой плохой английский sh .. Спасибо за чтение моего вопроса!