当前位置: 首页 > article >正文

vue.js javascript js判断是值否为空

检查一个对象(Object)是否为空,即不包含任何元素。Javascript 中的对象就是一个字典,其中包含了一系列的键值对(Key Value Pair)。检查一个对象是否为空,等价于检查对象中有没有键值对。

1、如字典,字典本身就是Object,定义为{},无任何key时为空

2、如数组,定义为[],无任何元素时认为为空

3、如String,为''或为null或为undefined时认为空

这里想到了之前在jquery中判断对象是否为空的方法:


function isEmptyObject(obj) {
  for (var key in obj) {
    return false;
  }
  return true;
}

它充分利用了Object的迭代器来实现的。但是无法对字符串为空进行判空调用!而我的需求为,类型不定!这是重点,即我必须有一个固定的方法,无论传入的类型是什么,只要满足以上3点我就认为是空的!为什么会这样要求呢?这个与产品功能有关,我的页面内容是不定的,类型不定、数据不定的动态表单!

        针对这种情况,我不可能一一去判断类型判空处理,所以,进行了新的探索尝试,贴出我的实现:

export function isnull(val) {
    if (!val || val === undefined) {
        return true
    } else if (JSON.stringify(val) === '{}' || JSON.stringify(val) === '[]') {
        return true
    }
    return false
}

为了使用方便,给全局的VUE绑定上这个方法:

import {isnull} from '@/utils/null';
Vue.prototype.isnull = isnull

在某个页面中使用:

if (this.isnull(p.component.config.defaultValue))
{
//数据为空的逻辑,如提示
}

这样无论我传入的数据类型是什么,完全满足我的页面需要!


http://www.kler.cn/news/133807.html

相关文章:

  • 庖丁解牛:NIO核心概念与机制详解 03 _ 缓冲区分配、包装和分片
  • 八股文-TCP的三次握手
  • C++-特殊类和单例模式
  • Leetcode—142.环形链表II【中等】
  • 基于springboot实现智能热度分析和自媒体推送平台系统项目【项目源码】
  • 将AI技术与VR元宇宙相结合的整体解决方案
  • 【Redis】zset常用命令集合间操作内部编码使用场景
  • 智能驾驶汽车虚拟仿真视频数据理解(一)
  • Java学习之路 —— Java高级
  • 2023-11-17 VsCode使用makefile进行多文件编译
  • 前端js常用代码段总结
  • 多功能神器,强劲升级,太极2.x你值得拥有!
  • Java Swing模拟银行自动取款机
  • OpenHarmony源码下载
  • mount /dev/mapper/centos-root on sysroot failed处理
  • python命名空间字典
  • git 相关指令总结(持续更新中......)
  • 力扣labuladong——一刷day38
  • 车载通信架构 —— 传统车内通信网络发展回顾
  • 微积分在神经网络中的本质
  • 基于JavaWeb+SpringBoot+掌上社区疫苗微信小程序系统的设计和实现
  • 腾讯微服务平台TSF学习笔记(一)--如何使用TSF的Sidecar过滤器实现mesh应用的故障注入
  • 二维码智慧门牌管理系统升级解决方案:查询功能大提升,让地址查找变得轻松便捷!
  • 比较两个数组内容是否相同
  • 【机器学习6】概率图模型
  • 滑动窗口练习(一)— 固定窗口最大值问题
  • LinkWeChat V4.9.8 版本发布
  • HCIA-综合实验(三)
  • linux 邮箱配置
  • 十、Linux运行级别