#javascript
Привет. Является ли сравнение
0 !== someElement.length
и
someElement.length !== 0 тождественным?
И почему существует два типа таких записей?
Ответы
Ответ 1
Можно писать и так и так — разницы нет. 0 !== someElement.length называется Условия Йоды. Обычно это применяют в условиях равенства, а не неравества, т.е. например 0 == someElement.length А пишут так потому, что легко забыть дописать два раза = и в итоге в условии получалось вместо if (someElement.length == 0) { ... вот так if (someElement.length = 0) { ... В итоге, вместо сравнения получалось присваивание. Ошибки, конечно же, не выскакивало, ибо валидное выражение и программа отрабатывала, но не так как планировалось. При условии if (0 = someElement.length) { ... возникнет ошибка (ибо нельзя константе что-то присвоить), которую сразу можно пофиксить. А остальное уже как единообразие стиля.
Комментариев нет:
Отправить комментарий