欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  web前端

怎样使用JS判断变量是否存在

程序员文章站 2022-05-27 09:45:39
...
这次给大家带来怎样使用JS判断变量是否存在,使用JS判断变量是否存在的注意事项有哪些,下面就是实战案例,一起来看一下。
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
</head>
<body>
//http://www.jb51.net/article/67551.htm
//判断变量i是否存在 typeof(i)=="undefined"
<script>
  /*---------------------------判断函数是否存在-------------------------------*/
  function isExitsFunction(funcName) {
    try {
      if (typeof(eval(funcName)) == "function") {
        return true;
        //  funcName();
      }
    } catch (e) {
      console.log(eval(funcName) + "+++++++++++++++++我异常了!!!!!!!!");
    }
    return false;
  }
  /*--------------------------------判断是否存在指定变量 -----------------------------------------*/
  function isExitsParamsVariable(variableName) {
    try {
      console.log("variableName.length===" + variableName.length);
      if (variableName.length == 0) {
        console.log(variableName + "===value has no params");//"":length为0
        return false;
      } else {
        console.log(variableName + "======value has params");//0:length为undefined
        return true;
      }
    } catch (e) {
      console.log(variableName + "----我异常了!!!!!!!!");//null,undefined,未赋值的a
    }
    return false;//null,undefined,未赋值的a
  }
  /*---------------------------------判断是否undefined--------------------------------*/
  function isExitsVariable(variableName) {
    console.log("typeof variableName====" + typeof(variableName));
    try {
      if (typeof(variableName) == "undefined") {
        console.log(variableName + "===value is undefined");//undefined,未赋值的a
        return false;
      } else {
        console.log(variableName + "=======value is true");//null,0,""
        return true;
      }
    } catch (e) {
      console.log(variableName + "-------我异常了........");
    }
    return false;
  }
  /*-------------------------------------------------测试数据---------------------------------------------*/
  var a;//声明未初始化,没有长度
  console.log("isExitsParamsVariable(a)" + isExitsParamsVariable(a));
  console.log("isExitsVariable(a)" + isExitsVariable(a));
  console.log("--------------------------------------------------")
  var b = undefined;//没有长度
  console.log("isExitsParamsVariable(b)===" + isExitsParamsVariable(b));
  console.log("isExitsVariable(b)===" + isExitsVariable(b));
  console.log("--------------------------------------------------")
  var c = null;//没有长度
  console.log("isExitsParamsVariable(c)===" + isExitsParamsVariable(c));
  console.log("isExitsVariable(c)===" + isExitsVariable(c));
  console.log("--------------------------------------------------")
  var d = 0;//长度undefined
  console.log("isExitsParamsVariable(d)===" + isExitsParamsVariable(d));
  console.log("isExitsVariable(d)===" + isExitsVariable(d));
  console.log("--------------------------------------------------")
  var e = "";//长度为0
  console.log("isExitsParamsVariable(e)====" + isExitsParamsVariable(e));
  console.log("isExitsVariable(e)===" + isExitsVariable(e));
  console.log("--------------------------------------------------")
  /*未定义声明 f 则log会报错:Uncaught ReferenceError: f is not defined ,不会执行两个判断方法*/
  console.log("isExitsParamsVariable(f)====" + isExitsParamsVariable(f));//f:undefined
  console.log("isExitsVariable(f)===" + isExitsVariable(f));
</script>
</body>
</html>

相信看了本文案例你已经掌握了方法,更多精彩请关注其它相关文章!

推荐阅读:

怎样实现微信小程序的自定义多选事件

在不使用select的情况下vue怎么实现下拉框功能

以上就是怎样使用JS判断变量是否存在的详细内容,更多请关注其它相关文章!