Javascript

js判断两个变量或常量是否相等

本文主要是介绍js判断两个变量或常量是否相等,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
JSON.stringify()在判断时会出现{a:1,b:2}!={b:2,a:1}的情况,下面是我的代码:
<script>
function equal(o1,o2){
	if(o1===o2){return true;}
	if(typeof(o1)!==typeof(o2)){
		return false;
	}
	if(typeof(o1)===typeof([])){
		// if(o1.length!==o2.length){
			// return false;
		// }
		// b1=true
		// for(i in o1){
			// if(!equal(o1[i],o2[i])){
				// return false
			// }
			
		// }
		if(JSON.stringify(o1)[0]!==JSON.stringify(o2)[0]){
			return false;
		}
		if(Object.keys(o1).length===Object.keys(o2).length){
			b2=false
			for(i in o1){
				if(!equal(o1[i],o2[i])){
					return false
				}
			}
			return true
			
		}else{
			return false;
		}
		return true
	}
	if(typeof(o1)===typeof({})){
		
	}
}
res=equal({s:{s:1},w:3},{w:3,s:{s:1}})
console.log(res)
</script>
这篇关于js判断两个变量或常量是否相等的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!