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

帮别人做网站制作微营销系统

帮别人做网站制作,微营销系统,商城网站建设流程,网络营销企业网站设计原文网址:JS--判断空值(null、undefined、NaN、false、空字符串等)_IT利刃出鞘的博客-CSDN博客 简介 本文介绍JavaScript判断空值的方法。 空值包括:undefined,null,NaN,,false,{}&#xff0…

原文网址:JS--判断空值(null、undefined、NaN、false、空字符串等)_IT利刃出鞘的博客-CSDN博客

简介

本文介绍JavaScript判断空值的方法。

空值包括:undefined,null,NaN,'',false,{},[]。

undefined

正确方法

let tmp = undefined;
console.log(typeof(tmp) == "undefined")  //true
console.log(tmp === undefined)  //true

说明:typeof 返回字符串,有8种取值:"number"、"string"、"boolean"、"object"、"function"、"undefined" 、"bigint"、"symbol" 

错误方法

let tmp = undefined;
console.log(tmp == undefined)  //true

原因:null == undefined结果也是true。

null

正确方法

let tmp = null;
console.log(tmp === null)  //true

错误方法

let tmp = null;
console.log(tmp == null) //true

原因:null == undefined结果也是true。 

NaN

方法

使用isNaN方法

  • 任何与NaN相关的操作都会返回NaN
  • NaN与任何的值都不相等,而且它与本身也不相等。
    • 所以不能使用 == 或 === 运算符判断某个值是否是 NaN。

示例

console.log(isNaN(NaN));//true
console.log(Object.prototype.toString.apply(NaN));//[object Number]
console.log(isNaN('123asd')); //true
console.log(isNaN(undefined));//trueconsole.log(isNaN(123)); //false
console.log(isNaN(true));//false
console.log(isNaN(Infinity));    //false
console.log(isNaN(null));//falseconsole.log(isNaN(1 / 0));//false
console.log(isNaN(0 / 0));//true

注意

在c/c++/java...中,一个数字除以0都会报错,但js比较特殊,不会报错、还会返回NaN或者infinity:

  • 非0数字除以0会返回infinity(无穷大),
  • 0和0相除会返回NaN;
  • Infinity*0 => NaN;     即:1/0*0=>NaN

字符串无效值

let str = ' ';
console.log(str.replace(/(^\s*)|(\s*$)/g, '').length <= 0);

null、undefined、零、NaN、false、空字符串

方法

取反。这些都是逻辑上的false:null、undefined、零、NaN、false、空字符串。所以可以直接取反。

示例

console.log(!null);     //true
console.log(!undefined);//true
console.log(!0);        //true
console.log(!NaN);      //true
console.log(!false);    //true
console.log(!'');       //true
console.log(!{});       //false

其他用法

因此,如果想判断一个值是否有效,可以两次取反:

if(!!a){//a有内容才执行的代码...  
}

{}(空对象)

法1:ES6的Object.keys()

let data = {};
let arr = Object.keys(data);
console.log(arr.length == 0); //true

法2:for in 循环判断

let obj = {};
let func = function(aObject) {for(let key in aObject) {return false;}return true;
}
console.log(func(obj)); //true

法3:Object.getOwnPropertyNames()

获取对象的属性名,返回数组对象,通过判断数组的length来判断此对象是否为空。

let data = {};
let arr = Object.getOwnPropertyNames(data);
console.log(arr.length == 0); //true

法4:JSON.stringify

let data = {};
console.log(JSON.stringify(data) === '{}'); //true

法5:jquery的isEmptyObject

let data = {};
console.log($.isEmptyObject(data)); //true

[](空数组)

法1:arr.length

Array.isArray && arr.length(通过Array.isArray来判断是否为数组,再通过length属性。)

let data = [];
console.log(Array.isArray(data) && data.length === 0); //true

法2:JSON.stringify

let data = [];
console.log(JSON.stringify(data) === '[]'); //true

http://www.mmbaike.com/news/108001.html

相关文章:

  • php网站设计毕业论文网络营销渠道建设方案
  • 设计出色的网站网站优化服务
  • 网络运维工程师任职要求windows优化大师官方免费
  • 冕宁住房和建设局网站网络营销公司
  • h5制作工具网站武汉网站设计
  • 垂直类b2c网站永久免费进销存管理软件手机版
  • 免费建设互动的网站seo公司多少钱
  • 前端角度实现网站首页加载慢优化网站友情链接检测
  • 如何做网站推广自己产品培训优化
  • 购物网站制作实例谷歌优化教程
  • 葫芦岛做网站新冠疫苗接种最新消息
  • 做网站汉中免费网站生成器
  • 金融网站做不了公安备案谷歌seo和百度seo区别
  • 泉州哪里做网站网络营销策划与推广
  • 个人网站链接怎么做wix网站制作
  • 南京网站制作哪家好网络营销环境分析包括哪些内容
  • 网站开发什么语言比较快女排联赛最新排行榜
  • 网站栏目页关键词如何做百度搜索排名机制
  • 手机网站制作良心服务seoul是哪个城市
  • 好用的网站网络营销策划书怎么写
  • 网站建设桂林河南网络推广公司
  • 哪家做的网站有利于百度推广宁德市疫情
  • 最好科技上海网站建设菏泽百度推广公司电话
  • 连云港网站建设哪家好主要推广手段免费
  • 百度云免费做网站seo是什么职业岗位
  • 沅江市建设局网站怎么才能建立一个网站卖东西
  • 单页网站域名完整html网页代码案例
  • 丽水微信网站建设公司今日刚刚发生的新闻
  • 企业管理咨询服务合同范本淘宝网店的seo主要是什么
  • 中山移动网站设计公司网站之家查询