javascript - null与""的问题

 Try_he伊 发布于 2022-11-11 07:57
        var loginEmail = $.trim($("input[name='email']").val());  
        
       if (loginEmail == null || loginEmail == '邮箱' || loginEmail == "") {  
           $(".smtwarning").empty().text("您的邮箱账号忘记输入了");  
             
           }  
           
           
         这个代码中loginEmail == null与loginEmail == ""不是一个意思吗??
8 个回答
  • null是javascript的内置对象。值 null 是一个 JavaScript 字面量,表示空值(null or an "empty" value),即没有对象被呈现(no object value is present)。它是 JavaScript 原始值 之一。而《""》是一个char型的值,和'a'、'b'是一样滴。可以看下这里MDN

    2022-11-12 01:47 回答
  • 所以在JS中判断字符串是否有值应该用!str,当然,str本身应该经过一轮trim

    2022-11-12 01:47 回答
  • $.trim 的返回值类型只有字符串,所以是不用判断是否为null的。
    null"" 是两种类型,不是一个意思。只是转成 boolen 值都是 false 。

    2022-11-12 01:47 回答
  • 不是一个意思,
    ""可能是$("input[name='email']").val()取到的值为''或只包含空格的字符串,
    null只可能是$("input[name='email']")没有获取到相关元素。

    2022-11-12 01:47 回答
  • 不是,null表示“没有对象”,而""表示一个空白的字符串,空白字符串也是对象,只不过字符串里没有字符。

    2022-11-12 01:47 回答
  • 2022-11-12 01:47 回答
  • null表示空对象指针

    null == '' // false
    

    另外感觉这里判断有问题吧 前面 var loginEmail = $.trim($("input[name='email']").val()); 这句代码里取出来的不会出现null这样的值吧 直接判断空就好了

    2022-11-12 01:47 回答
  • 以下内容均摘自《你不知道的javascript(中卷)》

    null 和 undefined 之间的 ==涉及隐式转换,在x=y中,ES5 规范 11.9.3.2-3 规定:

    • 如果 x 为 null, y 为 undefined,则结果为 true。

    • 如果 x 为 undefined, y 为 null,则结果为 true。

    在 == 中 null 和 undefined 相等(它们也与其自身相等),除此之外其他值都不存在这种
    情况,例如:

    var a = null;
    var b;
    a == b; // true
    a == null; // true
    b == null; // true
    a == false; // false
    b == false; // false
    a == ""; // false
    b == ""; // false
    a == 0; // false
    b == 0; // false

    null 和 undefined 之间的强制类型转换是安全可靠的,上例中除 null 和 undefined 以外的
    其他值均无法得到假阳( false positive)结果。个人认为通过这种方式将 null 和 undefined
    作为等价值来处理比较好。
    例如:

    var a = doSomething();
    if (a == null) {
    // ..
    }

    条件判断 a == null 仅在 doSomething() 返回非 null 和 undefined 时才成立,除此之外其
    他值都不成立,包括 0、 false 和 "" 这样的假值。

    2022-11-12 01:47 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有