爱收集资源网

Android神奇逻辑:存在即输出

网络整理 2023-10-27 16:03

JS判定一个对象是否存在

昨天遇见了一个判定对象是否存在的逻辑问题js中判断对象是否为空,本以为很简单,

if(Android){

console.log(“Android存在则输出,不存在则跳过”);

判断空对象js_判断一个对象是否为空对象_js中判断对象是否为空

可实际操作却遇见了问题。

1.undefined

var str1;
console.log(str1)
if(!str1){
  console.log("ok")
}
if(str1 == null){
  console.log("str1 ok")
}
if(str1 == undefined){
  console.log("str1 ok")
}
if(typeof str1){
  console.log("str1 ok")
}
if(typeof str1 == "undefined"){
  console.log("str1 ok")
}

输出:undefined,ok,

这是开发中最常见的,也就是定义了一个变量而没有给他形参,最后调用时侯输出undedined。由于str1是undefined所有if判定他是false,之后输出ok。str1为空js中判断对象是否为空,typeof是undefined。

2.isnotdefined

console.log(str2);
if(typeof str2 == "undefined"){
  console.log("str2 ok")
}
if(str2){
  console.log("str2 ok")
}

提示:UncaughtReferenceError:str2isnotdefined。str2没有申明,所以提示isnotdefined。对于一个没有申明的变量他的typeof是undefined。直接consolestr2会报错,所以if(str2)不能判定str2是否存在。

js中判断对象是否为空
上一篇:验证码被盗,银行卡被转走,你中招了 下一篇:没有了
相关文章