Сообщение Re[3]: TypeScript недоскритп от 12.02.2021 9:10
Изменено 12.02.2021 11:11 Pauel
Re[3]: TypeScript недоскритп
Здравствуйте, dikun, Вы писали:
D>Здравствуйте, tovarish_n, Вы писали:
_>>Например такое:
D>Потому и не надо его использовать. Или линтером чекать:
D>https://eslint.org/docs/rules/valid-typeof
D>Или ещё что.
D>Тем более, что
D>
D>Так что нафиг-нафиг.
Эти конструкции тебя никто не заставляет использовать. Не существует ни одной задачи, которая обязывала бы тебя использовать эти вещи. То есть, не пиши new Number(1) и у тебя не будет проблем.
Number(1) — конверсия, вполне адекватная вещь, работает вполне себе годно.
typeof NaN === 'number' это валидная вещь, все по спеке Double, где NaN является числом.
Собственно, все это небольшие родовые травмы, исправлять которые за наличием огромного количества легаси кода смысла большого нет.
D>Здравствуйте, tovarish_n, Вы писали:
_>>Например такое:
if (typeof padding === "nUmber") — не скомпилируется.D>Потому и не надо его использовать. Или линтером чекать:
D>https://eslint.org/docs/rules/valid-typeof
D>Или ещё что.
D>Тем более, что
D>
D>typeof NaN === 'number'
D>typeof new Number(1) === 'object'
D>typeof Number(1) === 'number'
D>D>Так что нафиг-нафиг.
Эти конструкции тебя никто не заставляет использовать. Не существует ни одной задачи, которая обязывала бы тебя использовать эти вещи. То есть, не пиши new Number(1) и у тебя не будет проблем.
Number(1) — конверсия, вполне адекватная вещь, работает вполне себе годно.
typeof NaN === 'number' это валидная вещь, все по спеке Double, где NaN является числом.
Собственно, все это небольшие родовые травмы, исправлять которые за наличием огромного количества легаси кода смысла большого нет.
Re[3]: TypeScript недоскритп
Здравствуйте, dikun, Вы писали:
D>Здравствуйте, tovarish_n, Вы писали:
_>>Например такое:
D>Потому и не надо его использовать. Или линтером чекать:
D>https://eslint.org/docs/rules/valid-typeof
D>Или ещё что.
D>Тем более, что
D>
D>Так что нафиг-нафиг.
Эти конструкции тебя никто не заставляет использовать. Не существует ни одной задачи, которая обязывала бы тебя использовать эти вещи. То есть, не пиши new Number(1) и у тебя не будет проблем. В разных языках с примитивами есть множество проблем, жээс тут не одинок.
Number(1) — конверсия, вполне адекватная вещь, работает вполне себе годно. Проблема в том, что далеко не все другие типы дают ожидаемый результат. Например, Array(1) и Array([1]) и Array(1,2) это родовая травма.
typeof NaN === 'number' это валидная вещь, все по спеке Double, где NaN является числом.
Собственно, все это небольшие родовые травмы, исправлять которые за наличием огромного количества легаси кода смысла большого нет.
D>Здравствуйте, tovarish_n, Вы писали:
_>>Например такое:
if (typeof padding === "nUmber") — не скомпилируется.D>Потому и не надо его использовать. Или линтером чекать:
D>https://eslint.org/docs/rules/valid-typeof
D>Или ещё что.
D>Тем более, что
D>
D>typeof NaN === 'number'
D>typeof new Number(1) === 'object'
D>typeof Number(1) === 'number'
D>D>Так что нафиг-нафиг.
Эти конструкции тебя никто не заставляет использовать. Не существует ни одной задачи, которая обязывала бы тебя использовать эти вещи. То есть, не пиши new Number(1) и у тебя не будет проблем. В разных языках с примитивами есть множество проблем, жээс тут не одинок.
Number(1) — конверсия, вполне адекватная вещь, работает вполне себе годно. Проблема в том, что далеко не все другие типы дают ожидаемый результат. Например, Array(1) и Array([1]) и Array(1,2) это родовая травма.
typeof NaN === 'number' это валидная вещь, все по спеке Double, где NaN является числом.
Собственно, все это небольшие родовые травмы, исправлять которые за наличием огромного количества легаси кода смысла большого нет.