Можно создать дубликат:
Обнаружение объект свойства неопределенного в JavaScript
JavaScript Неопределенного сравнение
Как мы можем добавить проверку неопределенной переменной, например:
function A(val) {
if (val == undefined)
// do this
else
// do this
}
javascript
jquery
undefined
Gaurav
источник
источник
Ответы:
Библиотека JQuery была разработана специально для упрощения и унификации определенных функций JavaScript.
Однако, если вам нужно проверить переменную по
undefined
значению, нет необходимости изобретать какой-либо специальный метод, поскольку в JavaScript естьtypeof
оператор, который является простым, быстрым и кроссплатформенным:Возвращает строку, указывающую тип переменной или другого неоцененного операнда. Основное преимущество этого метода по сравнению с тем
if (value === undefined) { ... }
, чтоtypeof
никогда не будет вызывать исключение в случае, если переменнаяvalue
не существует.источник
("#myId")
, убедитесь, что вам действительно нужно: a.typeof ("#myId")=== "undefined"
б. Или:typeof ("#myId").val() === "undefined"
("#myId")
- это не что иное, как строковая константа. Это всегда будет определяться и иметь тип"string"
. Если вы имеете в виду реальный объект jQuery, созданный с помощью$("#myId")
, он всегда будет определяться как"object"
(если вы правильно связали jQuery).myId
Можно оценить наличие элемента DOM с идентификаторомif ($("#myId").length > 0) { ... }
, в то время как проверить, не является ли его значение не пустым, можно с помощьюif ($("#myId").val()) { ... }
. Ни один из этих пунктов на самом деле не относится к теме этого вопроса.value === undefined
вызовет исключение, еслиvalue
переменная не существует. Так что вам решать, что использовать в реальной жизни.В этом случае вы можете использовать
=== undefined
сравнение:if(val === undefined)
Это работает, потому что
val
всегда существует (это аргумент функции).Если вы хотите проверить произвольную переменную, которая не является аргументом, то есть может вообще не быть определена, вам придется использовать ее,
if(typeof val === 'undefined')
чтобы избежать исключения в случае, еслиval
его не существует.источник
Обратите внимание, что typeof всегда возвращает строку и не генерирует ошибку, если переменная вообще не существует.
источник
===
вместо==
Я знаю, что опоздал, чтобы ответить на функцию, но JQuery есть встроенная функция, чтобы сделать это
См. Документ API jquery jquery.type https://api.jquery.com/jQuery.type/ для того же.
источник
Вы можете использовать сокращенную технику, чтобы проверить, является ли она неопределенной или нулевой
Надеюсь, что это поможет вам
источник
источник
когда я тестирую "
typeof obj === undefined
",alert(typeof obj)
возвращаемое значениеobject
, хотя obj не определено. Поскольку obj является типомObject
его возвращенияObject
, а неundefined
.Поэтому после нескольких часов тестирования я выбрал ниже методику.
Я не уверен, почему первая техника не сработала. Но я сделал свою работу, используя это.
источник
Если у вас есть имена элементов, а не id, мы можем выполнить неопределенную проверку всех текстовых элементов (например), как показано ниже, и заполнить их значением по умолчанию, скажем, 0.0:
источник
Я не уверен, что это лучшее решение, но оно прекрасно работает:
источник
попробуйте это ~ все проверки типа
источник
Вы можете использовать два пути 1)
if ( val == null )
2)if ( val === undefine )
источник