Size: a a a

2021 July 21

PO

Pavel Omelchenko in FrontCoder
Пичаль
источник

VF

Valentin Fedyakov in FrontCoder
parseInt(true) === NaN
источник

PO

Pavel Omelchenko in FrontCoder
я про такое поведение говорил, если кто не понимает)
источник

VF

Valentin Fedyakov in FrontCoder
а в смысле пичаль? а как же типизация?
источник

VF

Valentin Fedyakov in FrontCoder
ой… обмажутся своей пыхой…)))
источник

PO

Pavel Omelchenko in FrontCoder
дык такое не только у нас но и у других нормальных языков  есть)
источник

VF

Valentin Fedyakov in FrontCoder
в haskell?
источник

PO

Pavel Omelchenko in FrontCoder
хз как там у фпшников)
источник

VF

Valentin Fedyakov in FrontCoder
вот java
```
int myInt = myBoolean ? 1 : 0;
```
источник

ДБ

Дмитрий Баевский... in FrontCoder
Java? Кто сказал Java?
источник

VF

Valentin Fedyakov in FrontCoder
пока все говорят java, мы говорим kotlin) https://www.techiedelight.com/convert-boolean-to-int-kotlin/
источник

VF

Valentin Fedyakov in FrontCoder
если верить https://www.php.net/manual/ru/types.comparisons.php , то (int) такая же фигня с приведением типов, как и + в js
источник

PO

Pavel Omelchenko in FrontCoder
типа того
источник

PO

Pavel Omelchenko in FrontCoder
https://www.tutorialspoint.com/bool-to-int-conversion-in-cplusplus

пхп всё же сишные корни имеет)
источник

AK

Alexandr Kudryavtsev in FrontCoder
а почему это антипаттерн если речь действительно идёт о ситуации или-или и что там что там выполняется по-сути одно действие?

мне, на самом деле, такая конструкция тоже как правило кажется куда менее читаемой чем если

if (...) {
 ....
} else {
....
}

но тут ведь мало чего происходит

const len = data.length;
let a = 0;

if (len % 2) {
 a = data[parseInt(len/2)].value;
} else {
a = data[len/2].value + data[len/2 - 1].value;
}

(для сравнения)

const len = data.length;
let a = len % 2 ? data[parseInt(len/2)].value : (data[len/2].value + data[len/2 - 1].value);
источник

AK

Alexandr Kudryavtsev in FrontCoder
просто если не использовать тернарный оператор вот в таких простых случаях, когда его вообще использовать тогда?
источник

IV

Ivan Vasilchikov in FrontCoder
if (len % 2) {
 a = data[parseInt(len/2)].value;
} else {
a = data[len/2].value + data[len/2 - 1].value;
}
Это более читаемо раз в 10 (субъективно)
источник

PO

Pavel Omelchenko in FrontCoder
Потому что читать однострочник с тернарником СЛОЖНЕЕ читать чем условие или тот же тернарник, где условие – сразу возвращает bool и операторы не кишками наружу, а инкапсулированы через функции/методы
источник

VF

Valentin Fedyakov in FrontCoder
нууу это прям субъективизм. тернарник в JS это тот же if, только в виде выражения, что удобно для встраивания его в другие выражения
источник

VF

Valentin Fedyakov in FrontCoder
тут больше вопрос о допустимом стиле на проекте
источник