js实现empty
实现 empty 功能
在 JavaScript 中实现类似 PHP 的 empty() 功能,需要检查变量是否为 null、undefined、空字符串、0、false 或空数组/对象。

function empty(value) {
if (value === null || value === undefined) {
return true;
}
if (typeof value === 'string' && value.trim() === '') {
return true;
}
if (typeof value === 'number' && value === 0) {
return true;
}
if (typeof value === 'boolean' && value === false) {
return true;
}
if (Array.isArray(value) && value.length === 0) {
return true;
}
if (typeof value === 'object' && Object.keys(value).length === 0) {
return true;
}
return false;
}
使用示例
console.log(empty(null)); // true
console.log(empty(undefined)); // true
console.log(empty('')); // true
console.log(empty(0)); // true
console.log(empty(false)); // true
console.log(empty([])); // true
console.log(empty({})); // true
console.log(empty('Hello')); // false
console.log(empty(42)); // false
console.log(empty(true)); // false
console.log(empty([1, 2, 3])); // false
console.log(empty({a: 1})); // false
注意事项
对于对象类型的检查,需要注意原型链上的属性不会被 Object.keys() 包含。如果需要更严格的对象空检查,可能需要额外处理。

对于 NaN 的特殊情况,可以根据需求决定是否将其视为空值。如果需要包含,可以添加以下条件:
if (typeof value === 'number' && isNaN(value)) {
return true;
}






