问答详情
源自:9-6 setAttribute()方法

这个title为空的条件,我写 if(text==null)不行吗。等于null不也是为空吗?

写==""能成功, null就不行了。等于null不是为空么?

    if(text=="")

    {

    Lists[i].setAttribute("title","web前端技术");

    document.write(Lists[i].getAttribute("title")+"<br>");

    }

  }


提问者:再码一段 2017-03-22 12:09

个回答

  • kingdomwinqueen
    2017-03-22 14:52:43
    已采纳

    我觉得这个是关于 null 与空之间的区别的,你可以看看下面的,还望采纳

    js中的null代表不存在,在某些情况下和undefined定义一样,比如null==undefined返回的是true;而undefined这表示未定义;undefined是个类型,null是个object;然而''则表示具体的类型的值了;如果一个变量申明了未赋值,则类型未定义,这里判断变量==null会返回true;
    根本区别在于变量是否已经赋值,即是否已经初始化
    这里要清楚:null是个object类型,且值只有null
    undefined是个undefined类型,值只有undefined
    ''是个String类型的值
    那么这里null==undefined返回true
    null===undefined返回false
    null==''返回false
    undefined==''返回false

  • 幕布斯7253233
    2018-08-23 23:49:58

    var str1 = null; str引用为空


    var str2 = ""; str引用一个空串


    也就是null没有分配空间,""分配了空间,因此str1还不是一个实例化的对象,而str2已经实例化。


    null是对象类型,表示空对象,alert(typeof(null)); 会输出object


    " "是一个空格的字符串,alert(typeof(" "));会输出string。

  • 闪耀的北斗
    2017-03-22 14:56:22

    null不同于空