Я пришел написать свою собственную функцию для этого. JavaScript странный.
Это применимо буквально на что угодно. (Обратите внимание, что это также проверяет, содержит ли переменная какие-либо используемые значения . Но так как эта информация обычно также необходима, я думаю, что это стоит опубликовать). Пожалуйста, рассмотрите возможность оставить записку.
function empty(v) {
let type = typeof v;
if (type === 'undefined') {
return true;
}
if (type === 'boolean') {
return !v;
}
if (v === null) {
return true;
}
if (v === undefined) {
return true;
}
if (v instanceof Array) {
if (v.length < 1) {
return true;
}
} else if (type === 'string') {
if (v.length < 1) {
return true;
}
if (v === '0') {
return true;
}
} else if (type === 'object') {
if (Object.keys(v).length < 1) {
return true;
}
} else if (type === 'number') {
if (v === 0) {
return true;
}
}
return false;
}
Машинопись-совместимый.
Эта функция должна делать точно то же самое , как в PHP empty()
функции (см RETURN VALUES
)
Считает undefined
, null
, false
, 0
, 0.0
, "0"
{}
, []
как пустые.
"0.0"
, NaN
, " "
, true
Считаются не пусто.