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

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

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


Есть ли смысл писать так ?
if(myVar.length <= 0) {
  ....
}
  • Вопрос задан
  • 163 просмотра
Подписаться 1 Простой 5 комментариев
Решения вопроса 2
alexey-m-ukolov
@alexey-m-ukolov Куратор тега JavaScript
У переменной нет никакой длины. По вашему коду однозначно ответить на вопрос нельзя.

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

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


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

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

Похожие вопросы