找回密码
 立即注册

QQ登录

只需一步,快速开始

zshscc

注册会员

12

主题

18

帖子

82

积分

注册会员

积分
82
zshscc
注册会员   /  发表于:2022-4-22 09:41  /   查看:2625  /  回复:5
请问一下js命令中如何进行if判断null值或者空值

4 个回复

倒序浏览
谢厅讲师达人认证 悬赏达人认证 活字格认证
金牌服务用户   /  发表于:2022-4-25 11:22:23
推荐
我记得好像是不用特殊处理啊
假设 变量a是null或者undefined
直接 if a {
// 为真时干啥
}
回复 使用道具 举报
Jeffersyuan活字格认证
金牌服务用户   /  发表于:2022-4-22 11:34:15
沙发
typeof obj == 'undefined'
obj == null
!obj
都可以
回复 使用道具 举报
phoben讲师达人认证 悬赏达人认证 活字格认证
论坛元老   /  发表于:2022-4-23 18:24:50
板凳
本帖最后由 phoben 于 2022-4-23 18:31 编辑

方法很多啊,看想怎么用

第一种:转成bool类型
  1. var  i = "";
  2. Boolean(i);  // 会得到true 或者 false  为空会返回false
复制代码


第二种:三元表达式,可以在变量后面加上?和:来代替if else;
var  i = null;
var  i = null;
var n = i?'有值':'空值';

第三种:截断符号

var i = null;
var n =1;
var s = i || n;  //i为空则返回n
var s  = i ?? n;   //i为null则返回n


回复 使用道具 举报
renho活字格认证
银牌会员   /  发表于:2022-4-23 20:17:08
地板
本帖最后由 renho 于 2022-4-23 20:19 编辑

首先null 和 空 不是同一个东西

空除了null还包含undefined

看下面的你就懂了  很简单的
非空判断
  1. if(!a && a != 0) {
  2.   console.log('a 为空');
  3. }else{
  4.   console.log('a 不为空');
  5. }
复制代码


判断未定义undefined

  1. if(typeof(a) == 'undefined') {
  2.   console.log('a 是 undefined');
  3. }else{
  4.   console.log('a 不是 undefined');
  5. }
复制代码


判断null
  1. if(!a && typeof(a) !== 'undefined' && a != 0) {
  2.   console.log('a 是 null');
  3. }else{
  4.   console.log('a 不是 null');
  5. }
复制代码




回复 使用道具 举报
阿凡佬
中级会员   /  发表于:2022-4-25 11:02:51
5#
完整空值判断
  1. function isEmpty(v){
  2. switch (typeof v){
  3. case 'undefined' : return true;
  4. case 'string' : if(v.trim().length == 0) return true; break;
  5. case 'boolean' : if(!v) return true; break;
  6. case 'number' : if(0 === v) return true; break;
  7. case 'object' :
  8. if(null === v) return true;
  9. if(undefined !== v.length && v.length==0) return true;
  10. for(var k in v){return false;} return true;
  11. break;
  12. }
  13. return false;
  14. }
复制代码


回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部