Javascript, если typeof ='undefined' в пространстве try / catch

StackOverflow https://stackoverflow.com/questions/1063109

  •  21-08-2019
  •  | 
  •  

Вопрос

У меня есть код, который заключен в блок try / catch.Я использую typeof, чтобы узнать, определена ли переменная:

if (typeof (var) == 'string') { 
    //the string is defined
}

Однако, используя это в блоке try / catch, переходит к части catch вместо того, чтобы делать то, что предполагается сделать (сделать что-то со строкой, если она определена).

Как я могу проверить, определена ли переменная, не активируя исключение?

Это было полезно?

Решение

'var' - это недопустимое имя переменной - это ключевое слово.

Кроме того, то, что у вас есть, должно быть правильным.

Другие советы

Я бы использовал прямое сравнение без 'typeof':

var vvv= 2;
alert( vvv !== undefined );

Однако будьте осторожны, чтобы знать, хотите ли вы проверить достоверность (не false, null, undefined, "" или 0) по null, undefined, false или их комбинации.

Если вы просто хотите увидеть, что значение имеет значение, должен подойти код, который я разместил выше.

В качестве предложения я нашел эту книгу потрясающий: JavaScript - хорошие части

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top