js判断不为空不为0 (js判断不等于null和空对象)

js中常用的数据类型有: 值类型(基本类型):字符串(String)、数字(Number)、布尔(Boolean)、对空(Null)、未定义(Undefined)、Symbol。 引用数据类型:对象(Object)、数组(Array)、函数(Function)。 就以上数据类型先举几个例子: //字符串(String) leta='word'; //数字(Number) letb=123; //布…

js中常用的数据类型有:

值类型(基本类型):字符串(String)、数字(Number)、布尔(Boolean)、对空(Null)、未定义(Undefined)、Symbol。

引用数据类型:对象(Object)、数组(Array)、函数(Function)。

就以上数据类型先举几个例子:

// 字符串(String)
let a=\'word\';
// 数字(Number)
let b=123;
// 布尔(Boolean)
let c=true;
// 对空(Null)
let d=null;
// 未定义(Undefined)
let e;
// Symbol
let f=Symbol(\'123\');
// 对象(Object)
let g={name:\'xiangming\'};
// 数组(Array)
let h=[1,2,3,4,5];
// 函数(Function)
let i=function () {
  return \'done\';
};

1、最常见的判断方法:typeof

console.log(\'a:\'+typeof a);  	
// a:string
console.log(\'b:\'+typeof b); 
// b:number
console.log(\'c:\'+typeof c); 	
// c:boolean
console.log(\'d:\'+typeof d);  
// d:object
console.log(\'e:\'+typeof e);  
// e:undefined
console.log(\'f:\'+typeof f);  		
// f:symbol
console.log(\'g:\'+typeof g);  
// g:object
console.log(\'h:\'+typeof h);  
// h:object
console.log(\'i:\'+typeof i);  		
// i:function

所以,typeof 在判断除Object类型的对象时比较方便。

2、判断已知对象类型的方法:instanceof

console.log(\'a is string:\'+a instanceof String);
// a is string:true
console.log(\'b is number:\'+b instanceof Number);
// b is number:true
console.log(\'b is number:\'+b instanceof number);
// Uncaught ReferenceError: number is not defined

注意:instanceof 后面一定要是对象类型,并且大小写不能错,该方法适合一些条件选择或分支。

3、通用但很繁琐的方法:prototype(推荐)

// 定义方法获取变量类型
function var_type(data) {
  return Object.prototype.toString.call(data).replace(/^\\[object\\s(.+)\\]$/, \'$1\').toLowerCase();
}
console.log(\'a:\'+var_type(a));
// a:string
console.log(\'b:\'+var_type(b));
// b:number
console.log(\'c:\'+var_type(c));
// c:boolean
console.log(\'d:\'+var_type(d));
// d:null
console.log(\'e:\'+var_type(e));
// e:undefined
console.log(\'f:\'+var_type(f));
// f:symbol
console.log(\'g:\'+var_type(g));
// g:object
console.log(\'h:\'+var_type(h));
// h:array
console.log(\'i:\'+var_type(i));
// i:function

此方法虽稍显繁琐,但只需简单封装一个方法即可。

文章最后给大家推荐一个小编自己写的通用后台框架云静Admin通用后台,小编也是第一次尝试开源代码,还望大家不吝赐教。

本文来自投稿,不代表来拓客立场,如若转载,请注明出处:https://www.laituoke.com/ltk/32291.html