JS 判空的方法

在前端开发中,经常会遇到需要判断一个变量是否为空的情况,特别是在处理表单数据或者接口返回数据时,对于空值的判断是非常重要的。在 JavaScript 中,判空的方法有很多种,本文将详细介绍几种常用的方法。
1. 使用 if 语句
最常见的判空方法就是使用 if 语句来判断变量是否为空。可以通过对变量进行是否为 null、undefined、空字符串、空数组 等进行判断,来确定其是否为空。
示例代码如下:
let str = '';
if (str) {
console.log('str 不为空');
} else {
console.log('str 为空');
}
let arr = [];
if (arr.length > 0) {
console.log('arr 不为空');
} else {
console.log('arr 为空');
}
运行结果:
str 为空
arr 为空
2. 使用三元表达式
三元表达式是 JavaScript 中的一种简洁的条件判断语法,可以根据条件的成立与否来返回不同的值。可以利用三元表达式来判空。
示例代码如下:
let str = '';
let res = str ? 'str 不为空' : 'str 为空';
console.log(res);
let arr = [];
let res = arr.length > 0 ? 'arr 不为空' : 'arr 为空';
console.log(res);
运行结果:
str 为空
arr 为空
3. 使用逻辑与操作符
在 JavaScript 中,逻辑与操作符 && 可以用来判断一个变量是否为空。将判断条件写在逻辑与操作符的左侧,当变量为空时,会短路返回 false,否则返回变量本身。
示例代码如下:
let str = '';
let res = str && 'str 不为空';
console.log(res);
let arr = [];
let res = arr.length > 0 && 'arr 不为空';
console.log(res);
运行结果:
''
undefined
4. 使用 ! 操作符
在 JavaScript 中,! 操作符可以将一个变量转换为布尔值,同时取其相反值。可以利用 !! 来判断一个变量是否为空。
示例代码如下:
let str = '';
let res = !!str ? 'str 不为空' : 'str 为空';
console.log(res);
let arr = [];
let res = !!arr.length ? 'arr 不为空' : 'arr 为空';
console.log(res);
运行结果:
str 为空
arr 为空
5. 使用 Object.keys()
对于对象类型的变量,可以利用 Object.keys() 来判断对象是否为空。当对象为空时,Object.keys() 返回一个空数组。
示例代码如下:
let obj = {};
if (Object.keys(obj).length === 0) {
console.log('obj 为空');
} else {
console.log('obj 不为空');
}
运行结果:
obj 为空
总结:以上是几种常用的 JS 判空的方法,选择合适的方法进行判断可以让代码更加简洁和易读。在实际开发中,根据具体情况选取适当的判空方法是非常重要的。
极客笔记