JavaScript之检测数组或对象是否存在空值toLowerCasecallslicesplitstringifyindexOfprototypetoString

Posted web半晨

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaScript之检测数组或对象是否存在空值toLowerCasecallslicesplitstringifyindexOfprototypetoString相关的知识,希望对你有一定的参考价值。

class IsType 
	constructor(type) 
		type = type || '';
		this.type = type.toLowerCase();
	
	checkType(obj) 
		let val = Object.prototype.toString.call(obj);
		val = val.slice(1, val.length - 1);
		val = val.split(' ')[1];
		val = val.toLowerCase();
		return val === this.type;
	
	matchString(obj) 
		let toStr = JSON.stringify(obj);
		return toStr.indexOf('') !== -1 || toStr.indexOf('[]') !== -1;
	
	rationality(obj) 
		if (this.checkType(obj) && !this.matchString(obj) && Object.keys(obj).length > 0) 
			return true;
		 else if (this.checkType(obj) && !this.matchString(obj) && obj.length > 0) 
			return true;
		 else 
			return false;
		
	


let a = new IsType('Array'),
o = new IsType('object');

console.log(a.rationality());
// false
console.log(a.rationality([7]));
// true
console.log(a.rationality([7, []]));
// false
console.log(o.rationality( id: 2, list: [6], l: [9] ));
// true
console.log(o.rationality( id: 2, list: [6], l: [] ));
// false

以上是关于JavaScript之检测数组或对象是否存在空值toLowerCasecallslicesplitstringifyindexOfprototypetoString的主要内容,如果未能解决你的问题,请参考以下文章

JavaScript之清除数组空值项包括空数组空对象isArraystringifypushcontinuelength

javaScript使用技巧

C#怎么 给数组赋空值 判断数组为空

测试 JavaScript 数组中 JSON 值是不是存在

web前端之JavaScript的插件下载指令及介绍npminstallsaverequire

javascript,检测对象中是否存在某个属性