Задать вопрос
jessepinkman010101
@jessepinkman010101
Варю синий код

Может ли length быть отрицательным?

Есть условие: проверка длинны переменной
if(myVar.length == 0) {
  ....
}


Есть ли смысл писать так ?
if(myVar.length <= 0) {
  ....
}
  • Вопрос задан
  • 176 просмотров
Подписаться 1 Простой 5 комментариев
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Фронтенд-разработчик расширенный
    13 месяцев
    Далее
  • Академия Eduson
    Fullstack-разработчик на JavaScript
    11 месяцев
    Далее
  • Skillbox
    JavaScript
    3 месяца
    Далее
Решения вопроса 2
alexey-m-ukolov
@alexey-m-ukolov Куратор тега JavaScript
У переменной нет никакой длины. По вашему коду однозначно ответить на вопрос нельзя.

Обычно, когда речь идёт про свойство length, подразумевается массив, и в этом случае в большинстве браузеров js не даст записать туда отрицательное значение.

Однако, в общем случае это просто свойство объекта и ничто не мешает написать так:
var myVar = {
  length: -100500
};


P.S. Я параноик и всегда в данном случае пишу <=. Пусть это не имеет практического смысла в данном конкретном контексте, но помогает не забыть про это условие в других случаях, когда отрицательное значение не ожидается, но его появление всё же физически возможно. Мозг проще натренировать на одно правило, чем вспоминать, есть защита при присвоении где-то в другой части кода или нет.
Ответ написан
Комментировать
kritskiy_a
@kritskiy_a
Frontend-developer
нет, не может и особого смысла писать со знаком "меньше" нет
это же длина. как длина может быть отрицательной?)
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
ITK academy Нижний Новгород
от 50 000 до 90 000 ₽
ITK academy Казань
от 50 000 до 90 000 ₽